Programación en ensamblador

Page 43

CC-BY-SA • PID_00178132

43

Programación en ensamblador (x86-64)

Ejemplos push word 23h push qword [rax] pop qword [var] pop bx

3.4.3. Tipos de instrucciones El juego de instrucciones de los procesadores x86-64 es muy amplio. Podemos organizar las instrucciones según los tipos siguientes: 1)�Instrucciones�de�transferencia�de�datos: •

mov�destino,�fuente: instrucción genérica para mover un dato desde un origen a un destino.

push� fuente: instrucción que mueve el operando de la instrucción a la cima de la pila.

pop�destino: mueve el dato que se encuentra en la cima de la pila al operando destino.

xchg�destino,�fuente: intercambia contenidos de los operandos.

2)�Instrucciones�aritméticas�y�de�comparación: •

add�destino,�fuente: suma aritmética de los dos operandos.

adc�destino,�fuente: suma aritmética de los dos operandos considerando el bit de transporte.

sub�destino,�fuente: resta aritmética de los dos operandos.

sbb�destino,�fuente: resta aritmética de los dos operandos considerando el bit de transporte.

inc�destino: incrementa el operando en una unidad.

dec�destino: decrementa el operando en una unidad.

mul�fuente: multiplicación entera sin signo.

imul�fuente: multiplicación entera con signo.

div�fuente: división entera sin signo.

idiv�fuente: división entera con signo.

neg�destino: negación aritmética en complemento a 2.

cmp�destino,�fuente: comparación de los dos operandos; hace una resta sin guardar el resultado.

3)�Instrucciones�lógicas�y�de�desplazamiento: a)�Operaciones�lógicas: •

and�destino,�fuente: operación 'y' lógica.

or�destino,�fuente: operación 'o' lógica.

xor�destino,�fuente: operación `o exclusiva´ lógica.

not�destino: negación lógica bit a bit.

Ved también En el apartado 6 de este módulo se describe con detalle el formato y la utilización de las instrucciones de los procesadores x86-64 que consideramos más importantes.


Turn static files into dynamic content formats.

Create a flipbook

Articles inside

6.8. IDIV: división entera con signo

2min
pages 98-99

5.7.3. Retorno al sistema operativo (exit

0
page 90

6. Anexo: manual básico del juego de instrucciones

1min
page 91

5.6. Controlar la consola

1min
page 85

5.7. Funciones del sistema operativo (system calls

1min
page 86

5.7.1. Lectura de una cadena de caracteres desde el teclado

1min
page 87

5.4.4. Llamadas a subrutinas y paso de parámetros desde C

6min
pages 78-82

4.2.6. Apuntadores

1min
page 56

4.2.4. Control de flujo

3min
pages 51-53

4.2.5. Vectores

2min
pages 54-55

4.2.3. Operadores

1min
page 50

4.1.1. Generación de un programa ejecutable

1min
page 47

4.2.2. Variables

1min
page 49

3.4.2. Modos de direccionamiento

7min
pages 39-42

3.4.3. Tipos de instrucciones

3min
pages 43-45

3.4.1. Tipos de operandos de las instrucciones x86-64

5min
pages 36-38

3.2.3. Definición de otros elementos

2min
pages 31-32

2. Lenguajes de programación

1min
page 22

1.1.2. Modo heredado de 16 y 32 bits

1min
page 14

1.2.1. Organización de la memoria

1min
pages 16-17

2.1. Entorno de trabajo

2min
pages 23-24

1.2.2. Registros

5min
pages 18-21

Objetivos

0
pages 9-10

3.2.2. Definición de variables

5min
pages 27-30

Introducción

2min
pages 7-8
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.