SlideShare una empresa de Scribd logo
1 de 7
DIV, IDIV, NEG 
David Flores Gallegos
Para la división la instrucción DIV (dividir) maneja datos 
sin signo y la instrucción IDIV(división entera maneja datos 
con signo. 
Formato: 
[Etiqueta:] Div | IDiv [Registro | Memoria] 
División
Aquí el dividendo está en el registro AX y el divisor es un 
byte en memoria o en otro registro. Después de la división, 
el residuo esta en la parte alta del registro AX (AH) y el 
cociente esta en la parte baja del registro AX (AL). Ya que 
un cociente de un byte es muy pequeño; 
• Si es sin signo: Máximo de +255 (FFH). 
• Si es con signo: Máximo de +127 (7FH). 
Esta operación tiene un uso limitado 
AX 
AH 
Residuo 
Palabra Entre Byte 
AL 
Cociente 
Antes de la operación----- 
Después de la operación--
;Declaración de variables DIV 
Byte1 DB 80h; 128 en decimal 
Word1 DW 2000h ; 8192 en decimal 
------------------------------------------ 
;Instrucciones 
MOV AX, word1 
DIV Byte1 
Antes de la división 
AX 
AH 
20 
AL 
00 
Después de la división 
AX 
AH 
(Residuo) 
00 
AL 
(cociente) 
40 
;el resultado de 8192/128 = 64 (40h)
;Declaración de variables IDIV 
Byte1 DB 80h; 128 en decimal 
Word1 DW 2000h ; 8192 en decimal 
------------------------------------------ 
;Instrucciones 
MOV AX, word1 
IDIV Byte1 
Antes de la división 
AX 
AH 
20 
AL 
00 
Después de la división 
AX 
AH 
(Residuo) 
00 
AL 
(cociente) 
C0 
;el resultado de 8192/-128 = -64 (C0h)
La operación NEG (negar invierte el signo de un numero 
binario, de positivo a negativo y viceversa. En realidad, 
NEG invierte los bits, igual que NOT, y después suma uno 
para una correcta notación en complemento a dos. El 
formato para NEG es: 
[Etiqueta:] NEG [Registro | Memoria] 
Cambio (Inversión) del signo
NEG 
;Negación Positivo A Negativo Y Viceversa 
MOV AL,3; negado es FD hex 
NEG AL 
MOV AL,-3 
NEG AL 
Positivo a Negativo 
AX 
Antes Después 
AL 
03 
AL 
FD 
Negativo a Positivo 
AX 
Antes Después 
AL 
FD 
AL 
03

Más contenido relacionado

La actualidad más candente

Clase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorClase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorInfomania pro
 
Arreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeansArreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeansDaniel Gómez
 
Arquitectura de Von Neumann
Arquitectura de Von NeumannArquitectura de Von Neumann
Arquitectura de Von Neumannvictor medra
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalizaciónMarcelo Herrera
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfijaOmarzingm
 
Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basicoGustavo Davila
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosJosé Antonio Sandoval Acosta
 
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOSDISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOSGonzalo Murga Sotelo
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacionLuis Igoodbad
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensambladoreveTalavera
 
Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfazjomapuga
 

La actualidad más candente (20)

Clase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorClase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensamblador
 
Algoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externoAlgoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externo
 
Arreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeansArreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeans
 
Arquitectura de Von Neumann
Arquitectura de Von NeumannArquitectura de Von Neumann
Arquitectura de Von Neumann
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalización
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Comandos debug
Comandos debugComandos debug
Comandos debug
 
Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
 
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOSDISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Ensamblador y lenguaje c
Ensamblador y lenguaje cEnsamblador y lenguaje c
Ensamblador y lenguaje c
 
Revisando la jerarquía de chomsky
Revisando la jerarquía de chomskyRevisando la jerarquía de chomsky
Revisando la jerarquía de chomsky
 
Árboles Multicamino, B y B+
Árboles Multicamino, B y B+Árboles Multicamino, B y B+
Árboles Multicamino, B y B+
 
Guía de ejercicios de normalizacion
Guía de ejercicios de normalizacionGuía de ejercicios de normalizacion
Guía de ejercicios de normalizacion
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensamblador
 
Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfaz
 

Similar a DIV IDIV NEG instrucciones x86

MODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMA
MODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMAMODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMA
MODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMAgbermeo
 
Intrucciones 16 bits.pdf
Intrucciones 16 bits.pdfIntrucciones 16 bits.pdf
Intrucciones 16 bits.pdfDaginni78
 
MSX88 simulador assembly programación arquitectura de software.ppt
MSX88 simulador assembly programación arquitectura de software.pptMSX88 simulador assembly programación arquitectura de software.ppt
MSX88 simulador assembly programación arquitectura de software.pptmatias387621
 
Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)Carlos Guillén
 
Modos de Direccionamiento
Modos de DireccionamientoModos de Direccionamiento
Modos de Direccionamientogbermeo
 
Manual de ensamblador en español
Manual de ensamblador en españolManual de ensamblador en español
Manual de ensamblador en españolKenyi Soller
 
Clase 1.8 arquitectura del 8086
Clase 1.8 arquitectura del  8086Clase 1.8 arquitectura del  8086
Clase 1.8 arquitectura del 8086opalacios2016
 
Curso de microcontroladores capitulo 08
Curso de microcontroladores capitulo 08Curso de microcontroladores capitulo 08
Curso de microcontroladores capitulo 08Hamiltonn Casallas
 
Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones
Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones
Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones Anllel Cardenas Yllanes
 
Registros del procesador
Registros del procesadorRegistros del procesador
Registros del procesadorSaya Otonashi
 

Similar a DIV IDIV NEG instrucciones x86 (20)

Tabla de instrucciones asembler
Tabla de instrucciones asemblerTabla de instrucciones asembler
Tabla de instrucciones asembler
 
MODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMA
MODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMAMODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMA
MODOS DE DIRECIONAMIENTO DE LA MEMORIA DE PROGRAMA
 
Intrucciones 16 bits.pdf
Intrucciones 16 bits.pdfIntrucciones 16 bits.pdf
Intrucciones 16 bits.pdf
 
MSX88 simulador assembly programación arquitectura de software.ppt
MSX88 simulador assembly programación arquitectura de software.pptMSX88 simulador assembly programación arquitectura de software.ppt
MSX88 simulador assembly programación arquitectura de software.ppt
 
Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)
 
18613352 assembler
18613352 assembler18613352 assembler
18613352 assembler
 
Asm mododir2
Asm mododir2Asm mododir2
Asm mododir2
 
Esamblador8086
Esamblador8086Esamblador8086
Esamblador8086
 
asm_mododir2.pdf
asm_mododir2.pdfasm_mododir2.pdf
asm_mododir2.pdf
 
Atmel
AtmelAtmel
Atmel
 
Modos de Direccionamiento
Modos de DireccionamientoModos de Direccionamiento
Modos de Direccionamiento
 
Arquitectura De Los Computadore
Arquitectura De Los ComputadoreArquitectura De Los Computadore
Arquitectura De Los Computadore
 
Manual de ensamblador en español
Manual de ensamblador en españolManual de ensamblador en español
Manual de ensamblador en español
 
Tabla unidad2 los conselambiz
Tabla unidad2 los conselambizTabla unidad2 los conselambiz
Tabla unidad2 los conselambiz
 
Clase 1.8 arquitectura del 8086
Clase 1.8 arquitectura del  8086Clase 1.8 arquitectura del  8086
Clase 1.8 arquitectura del 8086
 
Curso de microcontroladores capitulo 08
Curso de microcontroladores capitulo 08Curso de microcontroladores capitulo 08
Curso de microcontroladores capitulo 08
 
Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones
Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones
Técnicas de programación en ensamblador pic16f877a repertorio 35 instrucciones
 
Registros del procesador
Registros del procesadorRegistros del procesador
Registros del procesador
 
Adc fpga
Adc fpgaAdc fpga
Adc fpga
 
Matematicos
MatematicosMatematicos
Matematicos
 

DIV IDIV NEG instrucciones x86

  • 1. DIV, IDIV, NEG David Flores Gallegos
  • 2. Para la división la instrucción DIV (dividir) maneja datos sin signo y la instrucción IDIV(división entera maneja datos con signo. Formato: [Etiqueta:] Div | IDiv [Registro | Memoria] División
  • 3. Aquí el dividendo está en el registro AX y el divisor es un byte en memoria o en otro registro. Después de la división, el residuo esta en la parte alta del registro AX (AH) y el cociente esta en la parte baja del registro AX (AL). Ya que un cociente de un byte es muy pequeño; • Si es sin signo: Máximo de +255 (FFH). • Si es con signo: Máximo de +127 (7FH). Esta operación tiene un uso limitado AX AH Residuo Palabra Entre Byte AL Cociente Antes de la operación----- Después de la operación--
  • 4. ;Declaración de variables DIV Byte1 DB 80h; 128 en decimal Word1 DW 2000h ; 8192 en decimal ------------------------------------------ ;Instrucciones MOV AX, word1 DIV Byte1 Antes de la división AX AH 20 AL 00 Después de la división AX AH (Residuo) 00 AL (cociente) 40 ;el resultado de 8192/128 = 64 (40h)
  • 5. ;Declaración de variables IDIV Byte1 DB 80h; 128 en decimal Word1 DW 2000h ; 8192 en decimal ------------------------------------------ ;Instrucciones MOV AX, word1 IDIV Byte1 Antes de la división AX AH 20 AL 00 Después de la división AX AH (Residuo) 00 AL (cociente) C0 ;el resultado de 8192/-128 = -64 (C0h)
  • 6. La operación NEG (negar invierte el signo de un numero binario, de positivo a negativo y viceversa. En realidad, NEG invierte los bits, igual que NOT, y después suma uno para una correcta notación en complemento a dos. El formato para NEG es: [Etiqueta:] NEG [Registro | Memoria] Cambio (Inversión) del signo
  • 7. NEG ;Negación Positivo A Negativo Y Viceversa MOV AL,3; negado es FD hex NEG AL MOV AL,-3 NEG AL Positivo a Negativo AX Antes Después AL 03 AL FD Negativo a Positivo AX Antes Después AL FD AL 03

Notas del editor

  1. Cuando se hacen divisiones de byte entre byte se asigna 0 a la parte alta de AX para evitar que tome otros valores utilizados en ejecución