SlideShare una empresa de Scribd logo
1 de 7
Tarea Intro
Cambiar lenguaje C - Ensamblador
   Programa: Ordenamiento burbuja



    ◦   -Arreglos de caracteres
    ◦   -Arreglo de números
    ◦   -Ciclos (for)
    ◦   -Sentencias (if)


    ◦ Elaborado en lenguaje C, pretende dentro una
      serie de números desordenados, pasarlos a una
      serie de números de menor a mayor.
   Convertirlo:
                   gcc –S burbuja.c

 Al inicio del código en assembly se declara
  el nombre el archivo como .file
  “nombre.c”
 Antes del main o de la función se declaran
  todas las cadenas de caracteres que se
  van a imprimir, (sin el printf) y se llaman
  .LC0 .LC1 etc. Cada una para cada .string
  que vayamos a tener en el programa.
   En mi programa dentro del main las instrucciones
    mas usadas fueron:

   mov: La copia de bytes o una palabra de la
    fuente al destino.
   and: Realiza una operación lógica AND de los dos
    operandos reemplazando el destino con el resultado
   sub: La fuente se resta de la destino y el resultado
    se almacena en el destino.
   call: Empuja Puntero de instrucciones para llamadas
    en la pila.
   jmp: transfiere el control de etiqueta (salto) dentro
    de -32768 a 32767.
   cmp:Resta fuente de destino y actualiza las banderas
    pero no guarda el resultado.
   add: añade “src” a “dest” y sustituye el contenido
    original de “dest.
                         Sentencias:
   jle: saltar cuando menos que o igual a.
   jl: salta cuando es menos de.
Quitando líneas
C             Assembly
   Programa ejecutado
   Bibliografía:
http://zsmith.co/intel/intel.html
http://www.cs.virginia.edu/~evans/cs216/guides/x86.html

Más contenido relacionado

La actualidad más candente

Centro de estudios_tecnologicos_industrial_y_de_servicios(2)
Centro de estudios_tecnologicos_industrial_y_de_servicios(2)Centro de estudios_tecnologicos_industrial_y_de_servicios(2)
Centro de estudios_tecnologicos_industrial_y_de_servicios(2)andreadelacruz002
 
Programa c++
Programa c++Programa c++
Programa c++Pablo
 
Desarrollo de aplicaciones , programacion en dev ++
Desarrollo de aplicaciones , programacion  en   dev ++Desarrollo de aplicaciones , programacion  en   dev ++
Desarrollo de aplicaciones , programacion en dev ++ernestre
 
Estructura basica para_c_ (1)
Estructura basica para_c_ (1)Estructura basica para_c_ (1)
Estructura basica para_c_ (1)luis_ocampo27
 
Ensayo lenuaje c
Ensayo lenuaje cEnsayo lenuaje c
Ensayo lenuaje crubenemb
 
Lenguaje de programacion_c(2)
Lenguaje de programacion_c(2)Lenguaje de programacion_c(2)
Lenguaje de programacion_c(2)gadiel1515
 
Estructura basica-para-c++ (1)
Estructura basica-para-c++ (1)Estructura basica-para-c++ (1)
Estructura basica-para-c++ (1)andreadelacruz002
 
Estructura basica para_c_(2)
Estructura basica para_c_(2)Estructura basica para_c_(2)
Estructura basica para_c_(2)Efren Pacheco
 
JavaScript no es Vietnam
JavaScript no es VietnamJavaScript no es Vietnam
JavaScript no es VietnamAlex Casquete
 
Yerdelis programacion
Yerdelis programacionYerdelis programacion
Yerdelis programacionyerdelis
 
Eficiencia en uso tiempo
Eficiencia en uso  tiempoEficiencia en uso  tiempo
Eficiencia en uso tiempoUVM
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programaciónagusygap
 
Sentencia For
Sentencia ForSentencia For
Sentencia Forciberosv
 
Instrucciones lenguaje assembler
Instrucciones lenguaje assemblerInstrucciones lenguaje assembler
Instrucciones lenguaje assemblerANDREA
 
Manipulacion de la pila!!
Manipulacion de la pila!!Manipulacion de la pila!!
Manipulacion de la pila!!romo91
 

La actualidad más candente (19)

Centro de estudios_tecnologicos_industrial_y_de_servicios(2)
Centro de estudios_tecnologicos_industrial_y_de_servicios(2)Centro de estudios_tecnologicos_industrial_y_de_servicios(2)
Centro de estudios_tecnologicos_industrial_y_de_servicios(2)
 
Programa c++
Programa c++Programa c++
Programa c++
 
Desarrollo de aplicaciones , programacion en dev ++
Desarrollo de aplicaciones , programacion  en   dev ++Desarrollo de aplicaciones , programacion  en   dev ++
Desarrollo de aplicaciones , programacion en dev ++
 
Programación en C++
Programación en C++Programación en C++
Programación en C++
 
Estructura basica para_c_ (1)
Estructura basica para_c_ (1)Estructura basica para_c_ (1)
Estructura basica para_c_ (1)
 
Emulador emu8086
Emulador emu8086Emulador emu8086
Emulador emu8086
 
Ensayo lenuaje c
Ensayo lenuaje cEnsayo lenuaje c
Ensayo lenuaje c
 
Lenguaje de programacion_c(2)
Lenguaje de programacion_c(2)Lenguaje de programacion_c(2)
Lenguaje de programacion_c(2)
 
Estructura basica-para-c++ (1)
Estructura basica-para-c++ (1)Estructura basica-para-c++ (1)
Estructura basica-para-c++ (1)
 
Estructura basica para_c_(2)
Estructura basica para_c_(2)Estructura basica para_c_(2)
Estructura basica para_c_(2)
 
JavaScript no es Vietnam
JavaScript no es VietnamJavaScript no es Vietnam
JavaScript no es Vietnam
 
Yerdelis programacion
Yerdelis programacionYerdelis programacion
Yerdelis programacion
 
Eficiencia en uso tiempo
Eficiencia en uso  tiempoEficiencia en uso  tiempo
Eficiencia en uso tiempo
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Sentencia For
Sentencia ForSentencia For
Sentencia For
 
Estructura .COM
Estructura .COMEstructura .COM
Estructura .COM
 
Instrucciones lenguaje assembler
Instrucciones lenguaje assemblerInstrucciones lenguaje assembler
Instrucciones lenguaje assembler
 
Info proyecto4
Info proyecto4Info proyecto4
Info proyecto4
 
Manipulacion de la pila!!
Manipulacion de la pila!!Manipulacion de la pila!!
Manipulacion de la pila!!
 

Similar a Tarea intro

Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionIng. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionJosé Antonio Sandoval Acosta
 
Fundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la ProgramaciónFundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la ProgramaciónJosé Antonio Sandoval Acosta
 
Fundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacionFundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacionJosé Antonio Sandoval Acosta
 
Funciones de Cadenas/ Computación para ingenieros
Funciones de Cadenas/ Computación para ingenierosFunciones de Cadenas/ Computación para ingenieros
Funciones de Cadenas/ Computación para ingenierosMaria jose Ramirez perez
 
3.6 funciones de biblioteca
3.6 funciones de biblioteca3.6 funciones de biblioteca
3.6 funciones de bibliotecaSNPP
 
Manual 1 de lenguaje c
Manual 1 de lenguaje cManual 1 de lenguaje c
Manual 1 de lenguaje cgechenique
 

Similar a Tarea intro (20)

Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionIng. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
 
Fundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la ProgramaciónFundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la Programación
 
Fundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacionFundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacion
 
PROGRAMACIÓN EN C
PROGRAMACIÓN EN CPROGRAMACIÓN EN C
PROGRAMACIÓN EN C
 
PROGRAMACION EN C
PROGRAMACION EN CPROGRAMACION EN C
PROGRAMACION EN C
 
Funciones de Cadenas/ Computación para ingenieros
Funciones de Cadenas/ Computación para ingenierosFunciones de Cadenas/ Computación para ingenieros
Funciones de Cadenas/ Computación para ingenieros
 
Curso c ii
Curso c iiCurso c ii
Curso c ii
 
Evaluacion
EvaluacionEvaluacion
Evaluacion
 
Programación en c y c++
Programación en c y c++Programación en c y c++
Programación en c y c++
 
Programación en c y c++
Programación en c y c++Programación en c y c++
Programación en c y c++
 
Ikgi
IkgiIkgi
Ikgi
 
3.6 funciones de biblioteca
3.6 funciones de biblioteca3.6 funciones de biblioteca
3.6 funciones de biblioteca
 
Manual 1 de lenguaje c
Manual 1 de lenguaje cManual 1 de lenguaje c
Manual 1 de lenguaje c
 
C(++) programacion en c y c++
C(++)   programacion en c y c++C(++)   programacion en c y c++
C(++) programacion en c y c++
 
Clase3_Python-CTIC
Clase3_Python-CTICClase3_Python-CTIC
Clase3_Python-CTIC
 
Visual c++
Visual c++Visual c++
Visual c++
 
Programacion c
Programacion cProgramacion c
Programacion c
 
C++
C++ C++
C++
 
Parte i curso c
Parte i curso cParte i curso c
Parte i curso c
 
Unidad 2 curso c
Unidad 2 curso cUnidad 2 curso c
Unidad 2 curso c
 

Más de dani

Carrito seguidor de línea final 2
Carrito seguidor de línea final 2Carrito seguidor de línea final 2
Carrito seguidor de línea final 2dani
 
Carrito seguidor de línea final
Carrito seguidor de línea finalCarrito seguidor de línea final
Carrito seguidor de línea finaldani
 
Redes neuronales final
Redes neuronales finalRedes neuronales final
Redes neuronales finaldani
 
Presentacion integrador 2
Presentacion integrador 2Presentacion integrador 2
Presentacion integrador 2dani
 
Reporte integrador bd - avance
Reporte integrador bd -  avanceReporte integrador bd -  avance
Reporte integrador bd - avancedani
 
Conexión de prototipos
Conexión de prototiposConexión de prototipos
Conexión de prototiposdani
 
Entrega integrador hardware
Entrega integrador   hardwareEntrega integrador   hardware
Entrega integrador hardwaredani
 
Redes neuro
Redes neuroRedes neuro
Redes neurodani
 
Preguntas Encuesta
Preguntas EncuestaPreguntas Encuesta
Preguntas Encuestadani
 
Evaluación de Usuarios
Evaluación de UsuariosEvaluación de Usuarios
Evaluación de Usuariosdani
 
Diagramas y casos de uso 3
Diagramas y casos de uso 3Diagramas y casos de uso 3
Diagramas y casos de uso 3dani
 
Entregable proyectointegrador
Entregable proyectointegradorEntregable proyectointegrador
Entregable proyectointegradordani
 
Entregable2 proyectointegrador
Entregable2 proyectointegradorEntregable2 proyectointegrador
Entregable2 proyectointegradordani
 
Entrega2-ProyectoIntegrador
Entrega2-ProyectoIntegradorEntrega2-ProyectoIntegrador
Entrega2-ProyectoIntegradordani
 
Computo final
Computo finalComputo final
Computo finaldani
 
Andrui car final
Andrui car finalAndrui car final
Andrui car finaldani
 
Andrui car
Andrui carAndrui car
Andrui cardani
 
Presentación de proyecto adaptativos
Presentación de proyecto adaptativosPresentación de proyecto adaptativos
Presentación de proyecto adaptativosdani
 
Proyecto1
Proyecto1Proyecto1
Proyecto1dani
 
Proyecto
ProyectoProyecto
Proyectodani
 

Más de dani (20)

Carrito seguidor de línea final 2
Carrito seguidor de línea final 2Carrito seguidor de línea final 2
Carrito seguidor de línea final 2
 
Carrito seguidor de línea final
Carrito seguidor de línea finalCarrito seguidor de línea final
Carrito seguidor de línea final
 
Redes neuronales final
Redes neuronales finalRedes neuronales final
Redes neuronales final
 
Presentacion integrador 2
Presentacion integrador 2Presentacion integrador 2
Presentacion integrador 2
 
Reporte integrador bd - avance
Reporte integrador bd -  avanceReporte integrador bd -  avance
Reporte integrador bd - avance
 
Conexión de prototipos
Conexión de prototiposConexión de prototipos
Conexión de prototipos
 
Entrega integrador hardware
Entrega integrador   hardwareEntrega integrador   hardware
Entrega integrador hardware
 
Redes neuro
Redes neuroRedes neuro
Redes neuro
 
Preguntas Encuesta
Preguntas EncuestaPreguntas Encuesta
Preguntas Encuesta
 
Evaluación de Usuarios
Evaluación de UsuariosEvaluación de Usuarios
Evaluación de Usuarios
 
Diagramas y casos de uso 3
Diagramas y casos de uso 3Diagramas y casos de uso 3
Diagramas y casos de uso 3
 
Entregable proyectointegrador
Entregable proyectointegradorEntregable proyectointegrador
Entregable proyectointegrador
 
Entregable2 proyectointegrador
Entregable2 proyectointegradorEntregable2 proyectointegrador
Entregable2 proyectointegrador
 
Entrega2-ProyectoIntegrador
Entrega2-ProyectoIntegradorEntrega2-ProyectoIntegrador
Entrega2-ProyectoIntegrador
 
Computo final
Computo finalComputo final
Computo final
 
Andrui car final
Andrui car finalAndrui car final
Andrui car final
 
Andrui car
Andrui carAndrui car
Andrui car
 
Presentación de proyecto adaptativos
Presentación de proyecto adaptativosPresentación de proyecto adaptativos
Presentación de proyecto adaptativos
 
Proyecto1
Proyecto1Proyecto1
Proyecto1
 
Proyecto
ProyectoProyecto
Proyecto
 

Tarea intro

  • 2. Programa: Ordenamiento burbuja ◦ -Arreglos de caracteres ◦ -Arreglo de números ◦ -Ciclos (for) ◦ -Sentencias (if) ◦ Elaborado en lenguaje C, pretende dentro una serie de números desordenados, pasarlos a una serie de números de menor a mayor.
  • 3. Convertirlo: gcc –S burbuja.c  Al inicio del código en assembly se declara el nombre el archivo como .file “nombre.c”  Antes del main o de la función se declaran todas las cadenas de caracteres que se van a imprimir, (sin el printf) y se llaman .LC0 .LC1 etc. Cada una para cada .string que vayamos a tener en el programa.
  • 4. En mi programa dentro del main las instrucciones mas usadas fueron:  mov: La copia de bytes o una palabra de la fuente al destino.  and: Realiza una operación lógica AND de los dos operandos reemplazando el destino con el resultado  sub: La fuente se resta de la destino y el resultado se almacena en el destino.  call: Empuja Puntero de instrucciones para llamadas en la pila.  jmp: transfiere el control de etiqueta (salto) dentro de -32768 a 32767.  cmp:Resta fuente de destino y actualiza las banderas pero no guarda el resultado.  add: añade “src” a “dest” y sustituye el contenido original de “dest.  Sentencias:  jle: saltar cuando menos que o igual a.  jl: salta cuando es menos de.
  • 6. Programa ejecutado
  • 7. Bibliografía: http://zsmith.co/intel/intel.html http://www.cs.virginia.edu/~evans/cs216/guides/x86.html