SlideShare una empresa de Scribd logo
1 de 24
INSTITUTO TECNOLOGICO DE MATEHUALA INGENIERIA EN SISTEMAS COMPUTACIONALES LENGUAJE ENSAMBLADOR Ing. Martin Luis Ledezma 2.1.3 MATEMATICOS Eva María Alonso Rueda Andrés Arévalo CovarrubiasThalía Carrillo LópezAna Cristina Contreras LunaFabiola Dafne Méndez Zúñiga
SUMAS AAA (Ajuste ASCII para la suma) Sintaxis: AAA Indicadores:      OF  DF  IF  TF  SF  ZF  AF  PF  CF                                   ?     -    -    -     ?     ?   x     ?   x   Convierte el contenido del registro AL en un número BCD no empaquetado. Si los cuatro bits menos significativos de AL son mayores que 9 ósi el indicador AF está a 1, se suma 6 a AL, 1 a AH, AF se pone a 1, CF se iguala a AF y AL pone sus cuatro bits más significativos a 0.    Ejemplo:           ADD     AL, BL                               AAA   En el ejemplo, tras la suma de dos números BCD no empaquetados colocados en AL y BL, el resultado (por medio de AAA) sigue siendo un número BCD no empaquetado.  
ADC (Suma con acarreo). Sintaxis: ADC destino, origen Indicadores:   OF  DF  IF  TF  SF  ZF  AF  PF  CF                            x     -     -     -     x     xxxx   Suma los operandos origen, destino y el valor del indicador de acarreo (0 ó1) y el resultado lo almacena en el operando destino. Se utiliza normalmente para sumar números grandes, de más de 16 bits, en varios pasos, considerando  lo que nos llevamos (el acarreo) de la suma anterior.  Ejemplo   ADC   AX, BX
ADD (suma). Sintaxis: ADD destino, origen Indicadores:  OF DF  IF  TF  SF  ZF  AF  PF  CF                            x     -     -     -    x     xxxx   Suma los operandos origen y destino almacenando el resultado en el operando destino. Se activa el acarreo si se desborda el registro destino durante la suma. Ejemplos:           ADD     AX, BX                              ADD     CL, DH  
DAA (Ajuste decimal para la suma) .Sintaxis: DAA   Indicadores:      OF  DF  IF  TF  SF  ZF  AF  PF  CF                   ?    -     -     -     x   xxxx Convierte el contenido del registro AL en un par de valores BCD: si los cuatro bits menos significativos de AL son un número mayor que 9, el indicador AF se pone a 1 y se suma 6 a AL. De igual forma, si los cuatro bits más significativos de AL tras la operación anterior son un número mayor que 9, el indicador CF se pone a 1 y se suma 60h a AL.       Ejemplo:    ADD     AL, CL                               DAA En el ejemplo anterior, si AL y CL contenían dos números BCD empaquetados, DAA hace que el resultado de la suma (en AL) siga siendo también un BCD empaquetado.
INC (Incrementar)   Sintaxis: INC destino           Indicadores:     O  DF  IF  TF  SF  ZF  AF  PF  CF                                                x      -   -    -     x     xxx    - Incrementa el operando destino. El operando destino puede ser byte o palabra. Obsérvese que esta instrucción no modifica el bit de acarreo (CF) y no es posible detectar un desbordamiento por este procedimiento (utilícese ZF).   Ejemplos:           INC     AL                             INC     ES: [DI]                          INC     SS: [BP+4]                             INC     WORD PTR CS: [BX+DI+7]
  R E S T A S   AAS (Ajuste ASCII para la resta) Sintaxis: AAS      Indicadores: OF  DF  IF  TF  SF  ZF  AF  PF  CF                               ?     -     -     -     ?   ?     x   ?     x Convierte el resultado de la sustracción de dos operandos BCD no empaquetados para que siga siendo un número BCD no empaquetado. Si el nibble inferior de AL tiene un valor mayor que 9, de AL se resta 6, se decrementa AH, AF se pone a 1 y CF se iguala a AF. El resultado se guarda en AL con los bits de 4 a 7 puestos a 0.        Ejemplo:           SUB     AL, BL                             AAS En el ejemplo, tras la resta de dos números BCD no empaquetados colocados en AL y BL, el resultado (por medio de AAS) sigue siendo un número BCD no empaquetado.
CMP (Comparación) Sintaxis: CMP destino, origen Indicadores:  OF  DF  IF  TF  SF  ZF  AF  PF  CF                                   x     -    -   -   x     xxxx Resta origen de destino sin retornar ningún resultado. Los operandos quedan inalterados, paro los indicadores pueden ser consultados mediante instrucciones de bifurcación condicional. Los operandos pueden ser de tipo byte o palabra pero ambos de la misma dimensión.            Ejemplo:          CMP     BX,  MEM_PAL                                                         CMP     CH, CL
DAS (Ajuste decimal para la resta) Sintaxis: DAS    Indicadores:      OF  DF  IF  TF  SF  ZF  AF  PF  CF                                  -     -     -     -     x   xxxx Corrige el resultado en AL de la resta de dos números BCD empaquetados, convirtiéndolo también en un valor BCD empaquetado. Si el nibble inferior tiene un valor mayor que 9 o AF es 1, a AL se le resta 6, AF se pone a 1. Si el nibble mas significativo es mayor que 9 óCF está a 1, entonces se resta 60h a AL y se activa después CF.         Ejemplo:           SUB     AL, BL                             DAS En el ejemplo anterior, si AL y BL contenían dos números BCD empaquetados, DAS hace que el resultado de la resta (en AL) siga siendo también un BCD empaquetado.  
DEC (Decrementar)   Sintaxis: DEC destino Indicadores: OF  DF  IF  TF  SF  ZF  AF  PF  CF x     -      -  -     x     xxx- Resta una unidad del operando destino. El operando puede ser byte o palabra. Obsérvese que esta instrucción no modifica el bit de acarreo (CF) y no es posible detectar un desbordamiento por este procedimiento (utilícese ZF).   Ejemplo:           DEC     AX                               DEC     MEM_BYTE   NEG (Negación). Sintaxis: NEG destino      Indicadores:      OF  DF  IF  TF  SF  ZF  AF  PF  CF                                                         x     -      -     -   x     xxxx Calcula el valor negativo en complemento a dos del operando y devuelve el resultado en el mismo operando.               Ejemplo:         NEG     AL  
SBB (resta con acarreo) Sintaxis: SBB destino, origen           Indicadores:        OF  DF  IF  TF  SF  ZF  AF  PF  CF                                                                       x     -     -   -     x     xxxx Resta el operando origen del operando destino y el resultado lo almacena en el operando destino. Si está a 1 el indicador de acarreo además resta una unidad más. Los operandos pueden ser de tipo byte o palabra. Se utiliza normalmente para restar números grandes, de más de 16 bits, en varios pasos, considerando  lo que nos llevamos  (el acarreo) de la resta anterior.      Ejemplo:           SBB     AX, AX                               SBB     CH, DH
SUB (Resta) Sintaxis: SUB destino, origen           Indicadores:   OF  DF  IF  TF  SF  ZF  AF  PF  CF                                   x      -    -     -   x     xxxx Resta el operando destino al operando origen, colocando el resultado en el operando destino. Los operandos pueden tener o no signo, siendo necesario que sean del mismo tipo, byte o palabra.              Ejemplos:           SUB     AL, BL                               SUB     DX, DX
MULTIPLICACIONES    AAM (Ajuste ASCII para la multiplicación) Sintaxis: AAM Indicadores: OF  DF  IF  TF  SF  ZF  AF  PF  CF              ?     -     -    -     x   x     ?     x     ?  Corrige el resultado en AX del producto de dos números BCD no empaquetados, convirtiéndolo en un valor BCD también no empaquetado. En AH sitúa el cociente de AL/10 quedando en AL el resto de dicha operación.     Ejemplo:           MUL     BL                AAM En el ejemplo, tras el producto de dos números BCD no empaquetados colocados en AL y BL, el resultado (por medio de AAA) sigue siendo, en AX, un número BCD no empaquetado.
IMUL (multiplicación entera con signo) Sintaxis:  IMUL origen (origen  no puede ser operando inmediato en 8086, sí en 286)          Indicadores:    OF  DF  IF  TF  SF  ZF  AF  PF  CF                                   x    -    -  -     ?     ?   ?   ?     X Multiplica un operando origen con signo de longitud byte o palabra por AL o AX respectivamente. Si  origen  es un byte el resultado se guarda en AH (byte más significativo) y en AL (menos significativo), si  origen  es una palabra el resultado es devuelto en DX (parte alta) y AX (parte baja). Si las mitades más significativas son distintas de cero, independientemente del signo, CF y OF son activados.                 Ejemplo:           IMUL     BX              IMUL     CH
MUL (multiplicación sin signo)} Sintaxis: MUL origen (origen  no puede ser operando inmediato)           Indicadores:     OF DF IF TF SF ZF AF PF CF                          x   -    -    -     ?   ?   ?   ?   X Multiplica el contenido sin signo del acumulador por el operando origen. Si eloperando destino es un byte el acumulador es AL guardando el resultado en AH y AL, si el contenido de AH es distinto de 0 activa los indicadores CF y OF. Cuando el operando origen es de longitud palabra el acumulador es AX quedando el resultado sobre DX y AX, si el valor de DX es distinto de cero los indicadores CF y OF se activan.      Ejemplo:           MUL     BYTE PTR DS: [DI]                              MUL     DX                              MUL    CL
Desbordamientos. Este alerta con los desbordamientos en las operaciones aritméticas. Ya que un byte solo permite el uso de un bit de signo y siete de datos (desde -128 hasta +127), una operación aritmética puede exceder con facilidad la capacidad de un registro de un byte. Y una suma en el registro AL, que exceda su capacidad puede provocar resultados inesperados.   Byte por byte Para multiplicar dos números de un byte, el multiplicando esta en el registro AL y el multiplicador es un byte en memoria o en otro registro. Para la instrucción MUL DL, la operación multiplica el contenido del AL por el contenido del DL. El producto generado esta en el registro AX. La operación ignora y borra cualquier información que pueda estar en el AH.
Palabra por palabra Para multiplicar dos números de una palabra, el multiplicando esta en el registro AX y el multiplicador es una palabra en memoria o en otro registro. Para la instrucción MUL DX, la operación multiplica el contenido del AX por el contenido del DX. El producto generado es una palabra doble que necesita dos registros: la parte de orden alto (mas a la izquierda) en el DX y la parte de orden bajo (mas a la derecha) en el AX. La operación ignora y borra cualquier información que puede estar en el DX.   Palabra doble por palabra doble. Para multiplicar dos números de palabras dobles, el multiplicando esta en el registro EAX y el multiplicador es una palabra doble en memoria o en otro registro. El producto es generado en el par EDX:EAX. La operación ignora y borra cualquier información que ya este en el EDX.  
D I V I S I O N E S   AAD (Ajuste ASCII para la división) Sintaxis: AAD      Indicadores:  OF  DF  IF  TF  SF  ZF  AF  PF  CF                                    ?     -     -   -    x   x    ?   x     ? Convierte dos números BCD no empaquetados contenidos en AH y AL en un dividendo de un byte que queda almacenado en AL. Tras la operación AH queda a cero. Esta instrucción es necesaria ANTES de la operación de dividir, al contrario que AAM.       Ejemplo:          AAD                             DIV     BL En el ejemplo, tras convertir los dos números BCD no empaquetados (en AX) en un dividendo válido, la instrucción de dividir genera un resultado correcto.
DIV (División sin signo) Sintaxis: DIV origen (origen  no puede ser operando inmediato).           Indicadores:  OF  DF  IF  TF  SF  ZF  AF  PF  CF              ?     -   -     -     ?   ?   ?     ?     ?   Sn considerar el signo, un número contenido en el acumulador y su extensión (AH, AL si el operando es de tipo byte o DX, AX si el operando es palabra) entre el operando fuente. El cociente se guarda en AL o AX y el resto en AH o DX según el operando sea byte o palabra respectivamente. DX o AH deben ser cero antes de la operación. Cuando el cociente es mayor que el resultado máximo que puede almacenar, cociente y resto quedan indefinidos produciéndose una interrupción 0. En caso de que las partes más significativas del cociente tengan un valor distinto de cero se activan los indicadores CF y OF.     Ejemplo:           DIV     BL                              DIV     MEM_PAL  
IDIV (División entera) Sintaxis: IDIV origen ( origen no puede ser operando inmediato).       Indicadores:     OF  DF  IF  TF  SF  ZF  AF  PF  CF                                             ?      -    -  -     ?   ?   ?      ?   ? Divide, considerando el signo, un número contenido en el acumulador y su extensión entre el operando fuente. El cociente se almacena en AL o AX según el operando sea byte o palabra y de igual manera el resto en AH o DX. DX o AH deben ser cero antes de la operación. Cuando el cociente es positivo y superior al valor máximo que puede almacenarse (7fh ó7fffh), o cuando el cociente es negativo e inferior al valor mínimo que puede almacenarse (81h u 8001h) entonces cociente y resto quedan indefinidos, generándose una interrupción 0, lo que también sucede si el divisor es 0. Ejemplo:           IDIV     BL                     IDIV     BX Las operaciones de división básicas son byte entre byte, palabra entre palabra y palabras dobles entre palabra dobles.
Palabra entre palabra Aquí el dividendo esta en el AX y el divisor es un byte en memoria o en otro registro. Después de la división, el residuo esta en el AH y el cociente esta en el AL. Ya que un cociente de un byte es muy pequeño -si es sin signo, un máximo de +255 (FFH) y con signo +127 (7FH)- esta operación tiene un uso limitado.   Palabra doble entre palabra .Para esta operación, el dividendo esta en el par DX:AX y el divisor es una palabra en memoria o en otro registro. Después de la división, el residuo esta en el DX y el cociente esta en el AX. El cociente de una palabra permite para datos sin signo un máximo de +32, 767 (FFFFH) y con signo +16, 383 (7FFFH).
Palabra cuádruple entre palabra doble. Al dividir una palabra cuádruple entre una palabra doble, el dividendo esta en el par EDX:EAX y el divisor esta en una palabra doble en memoria o en otro registro. Después de la división, el residuo esta en el EDX y el cociente en el AEX. En los ejemplos siguientes, de DIV, los divisores están en un registro, que determina el tipo de operación:
EJEMPLO DE PROGRAMA CON INSTRUCCIONES ARITMETICAS

Más contenido relacionado

La actualidad más candente

8086 instruction set (with simulator)
8086 instruction set (with simulator)8086 instruction set (with simulator)
8086 instruction set (with simulator)Aswini Dharmaraj
 
Modulacion De Banda Base
Modulacion De Banda BaseModulacion De Banda Base
Modulacion De Banda Basealdomayra
 
Types of Instruction Format
Types of Instruction FormatTypes of Instruction Format
Types of Instruction FormatDhrumil Panchal
 
assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...
assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...
assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...Bilal Amjad
 
Multiplexacion por division de frecuencia
Multiplexacion por division de frecuenciaMultiplexacion por division de frecuencia
Multiplexacion por division de frecuenciatheche88
 
Multiplication & division instructions microprocessor 8086
Multiplication & division instructions microprocessor 8086Multiplication & division instructions microprocessor 8086
Multiplication & division instructions microprocessor 8086University of Gujrat, Pakistan
 
Assembly Language Lecture 4
Assembly Language Lecture 4Assembly Language Lecture 4
Assembly Language Lecture 4Motaz Saad
 
Examen parcial lineas_de_trasmision.
Examen parcial lineas_de_trasmision.Examen parcial lineas_de_trasmision.
Examen parcial lineas_de_trasmision.Jorge M
 
TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES
TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES
TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES Alberto Mendoza
 
Instruction Set of 8086 Microprocessor
Instruction Set of 8086 MicroprocessorInstruction Set of 8086 Microprocessor
Instruction Set of 8086 MicroprocessorAshita Agrawal
 
Codificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo CódigoCodificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo CódigoOscar Javier Jimenez Revelo
 
Unit 4 assembly language programming
Unit 4   assembly language programmingUnit 4   assembly language programming
Unit 4 assembly language programmingKartik Sharma
 
1. Ingreso a las redes. Protocolos de internet
1. Ingreso a las redes. Protocolos de internet1. Ingreso a las redes. Protocolos de internet
1. Ingreso a las redes. Protocolos de internetEdison Coimbra G.
 

La actualidad más candente (20)

8086 instruction set (with simulator)
8086 instruction set (with simulator)8086 instruction set (with simulator)
8086 instruction set (with simulator)
 
Modulacion De Banda Base
Modulacion De Banda BaseModulacion De Banda Base
Modulacion De Banda Base
 
Types of Instruction Format
Types of Instruction FormatTypes of Instruction Format
Types of Instruction Format
 
assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...
assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...
assembly language programming organization of IBM PC chapter 9 part-1(MULTIPL...
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
 
Multiplexacion por division de frecuencia
Multiplexacion por division de frecuenciaMultiplexacion por division de frecuencia
Multiplexacion por division de frecuencia
 
Sesión n° 15 com sat
Sesión n° 15   com satSesión n° 15   com sat
Sesión n° 15 com sat
 
Multiplication & division instructions microprocessor 8086
Multiplication & division instructions microprocessor 8086Multiplication & division instructions microprocessor 8086
Multiplication & division instructions microprocessor 8086
 
Assembly Language Lecture 4
Assembly Language Lecture 4Assembly Language Lecture 4
Assembly Language Lecture 4
 
Examen parcial lineas_de_trasmision.
Examen parcial lineas_de_trasmision.Examen parcial lineas_de_trasmision.
Examen parcial lineas_de_trasmision.
 
Técnicas de Modulacion
Técnicas de ModulacionTécnicas de Modulacion
Técnicas de Modulacion
 
TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES
TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES
TEMAS IMPORTANTES DE INTRODUCCION A LAS TELECOMUNICACIONES
 
Instruction Set of 8086 Microprocessor
Instruction Set of 8086 MicroprocessorInstruction Set of 8086 Microprocessor
Instruction Set of 8086 Microprocessor
 
T6 CÓDIGOS BINARIOS
T6 CÓDIGOS BINARIOST6 CÓDIGOS BINARIOS
T6 CÓDIGOS BINARIOS
 
Codificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo CódigoCodificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo Código
 
Bus system
Bus systemBus system
Bus system
 
Unit 4 assembly language programming
Unit 4   assembly language programmingUnit 4   assembly language programming
Unit 4 assembly language programming
 
Assembly Language -I
Assembly Language -IAssembly Language -I
Assembly Language -I
 
1. Ingreso a las redes. Protocolos de internet
1. Ingreso a las redes. Protocolos de internet1. Ingreso a las redes. Protocolos de internet
1. Ingreso a las redes. Protocolos de internet
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
 

Destacado

Instrucciones lenguaje assembler
Instrucciones lenguaje assemblerInstrucciones lenguaje assembler
Instrucciones lenguaje assemblerANDREA
 
Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basicoGustavo Davila
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensambladoriagardea
 
aplicaciones de Lenguaje C
aplicaciones  de Lenguaje C  aplicaciones  de Lenguaje C
aplicaciones de Lenguaje C zerpa1991
 
Decimal empaquetado
Decimal empaquetadoDecimal empaquetado
Decimal empaquetadoSofylutqm
 
Ejemplos de lenguaje ensamblador
Ejemplos de lenguaje ensambladorEjemplos de lenguaje ensamblador
Ejemplos de lenguaje ensambladorreivax2091
 
Uso de las tablas en lenguaje ensamblador
Uso de las tablas en lenguaje ensambladorUso de las tablas en lenguaje ensamblador
Uso de las tablas en lenguaje ensambladorLuis Zurita
 
Lenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesadorLenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesadorsmfch
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensambladoreveTalavera
 

Destacado (13)

Instrucciones lenguaje assembler
Instrucciones lenguaje assemblerInstrucciones lenguaje assembler
Instrucciones lenguaje assembler
 
Curso básico de ensamblador
Curso básico de ensambladorCurso básico de ensamblador
Curso básico de ensamblador
 
Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Lenguaje ensamblador.docx
Lenguaje ensamblador.docxLenguaje ensamblador.docx
Lenguaje ensamblador.docx
 
aplicaciones de Lenguaje C
aplicaciones  de Lenguaje C  aplicaciones  de Lenguaje C
aplicaciones de Lenguaje C
 
Decimal empaquetado
Decimal empaquetadoDecimal empaquetado
Decimal empaquetado
 
Ejemplos de lenguaje ensamblador
Ejemplos de lenguaje ensambladorEjemplos de lenguaje ensamblador
Ejemplos de lenguaje ensamblador
 
Uso de las tablas en lenguaje ensamblador
Uso de las tablas en lenguaje ensambladorUso de las tablas en lenguaje ensamblador
Uso de las tablas en lenguaje ensamblador
 
Lenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesadorLenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesador
 
Ensamblador
EnsambladorEnsamblador
Ensamblador
 
Div, idiv, Neg ensamblador
Div, idiv, Neg ensambladorDiv, idiv, Neg ensamblador
Div, idiv, Neg ensamblador
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensamblador
 

Similar a Matematicos

Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)Carlos Guillén
 
Intrucciones 16 bits.pdf
Intrucciones 16 bits.pdfIntrucciones 16 bits.pdf
Intrucciones 16 bits.pdfDaginni78
 
Arranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con AssemblerArranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con AssemblerPedro Contreras Flores
 
Equipo 6 comparaciones
Equipo 6 comparacionesEquipo 6 comparaciones
Equipo 6 comparacionesgabo
 
Organizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamientoOrganizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamientoHarold Torres
 
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
 
Comandos De Unix
Comandos De UnixComandos De Unix
Comandos De Unixguestaa40a5
 
Organizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamientoOrganizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamientoJosé Luis Olivares
 
Sintaxis del lenguaje ensamblador
Sintaxis del lenguaje ensambladorSintaxis del lenguaje ensamblador
Sintaxis del lenguaje ensambladornaye torres
 
Registros del procesador
Registros del procesadorRegistros del procesador
Registros del procesadorSaya Otonashi
 
Registros del procesador 01
Registros del procesador 01Registros del procesador 01
Registros del procesador 01Isaias Castro
 
Mis preguntas del blog y las ultimas .l.
Mis preguntas del blog y las ultimas .l.Mis preguntas del blog y las ultimas .l.
Mis preguntas del blog y las ultimas .l.Mauricio Velasquez
 
pic-16F628 generalidades y prog 1y2.pdf
pic-16F628 generalidades y prog 1y2.pdfpic-16F628 generalidades y prog 1y2.pdf
pic-16F628 generalidades y prog 1y2.pdfBryanVargas70
 

Similar a Matematicos (20)

Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)Lenguaje ensamblador (assembler)
Lenguaje ensamblador (assembler)
 
Intrucciones 16 bits.pdf
Intrucciones 16 bits.pdfIntrucciones 16 bits.pdf
Intrucciones 16 bits.pdf
 
18613352 assembler
18613352 assembler18613352 assembler
18613352 assembler
 
Arranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con AssemblerArranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con Assembler
 
asm_mododir2.pdf
asm_mododir2.pdfasm_mododir2.pdf
asm_mododir2.pdf
 
Asm mododir2
Asm mododir2Asm mododir2
Asm mododir2
 
Esamblador8086
Esamblador8086Esamblador8086
Esamblador8086
 
Equipo 6 comparaciones
Equipo 6 comparacionesEquipo 6 comparaciones
Equipo 6 comparaciones
 
Organizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamientoOrganizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamiento
 
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
 
Comandos De Unix
Comandos De UnixComandos De Unix
Comandos De Unix
 
Organizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamientoOrganizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamiento
 
Sintaxis del lenguaje ensamblador
Sintaxis del lenguaje ensambladorSintaxis del lenguaje ensamblador
Sintaxis del lenguaje ensamblador
 
Registros del procesador
Registros del procesadorRegistros del procesador
Registros del procesador
 
Registros del procesador 01
Registros del procesador 01Registros del procesador 01
Registros del procesador 01
 
Codificacion
CodificacionCodificacion
Codificacion
 
Mis preguntas del blog y las ultimas .l.
Mis preguntas del blog y las ultimas .l.Mis preguntas del blog y las ultimas .l.
Mis preguntas del blog y las ultimas .l.
 
Banderas
BanderasBanderas
Banderas
 
pic-16F628 generalidades y prog 1y2.pdf
pic-16F628 generalidades y prog 1y2.pdfpic-16F628 generalidades y prog 1y2.pdf
pic-16F628 generalidades y prog 1y2.pdf
 
Manual80x86
Manual80x86Manual80x86
Manual80x86
 

Último

2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 

Último (20)

2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 

Matematicos

  • 1. INSTITUTO TECNOLOGICO DE MATEHUALA INGENIERIA EN SISTEMAS COMPUTACIONALES LENGUAJE ENSAMBLADOR Ing. Martin Luis Ledezma 2.1.3 MATEMATICOS Eva María Alonso Rueda Andrés Arévalo CovarrubiasThalía Carrillo LópezAna Cristina Contreras LunaFabiola Dafne Méndez Zúñiga
  • 2. SUMAS AAA (Ajuste ASCII para la suma) Sintaxis: AAA Indicadores: OF DF IF TF SF ZF AF PF CF ? - - - ? ? x ? x   Convierte el contenido del registro AL en un número BCD no empaquetado. Si los cuatro bits menos significativos de AL son mayores que 9 ósi el indicador AF está a 1, se suma 6 a AL, 1 a AH, AF se pone a 1, CF se iguala a AF y AL pone sus cuatro bits más significativos a 0. Ejemplo: ADD AL, BL AAA   En el ejemplo, tras la suma de dos números BCD no empaquetados colocados en AL y BL, el resultado (por medio de AAA) sigue siendo un número BCD no empaquetado.  
  • 3. ADC (Suma con acarreo). Sintaxis: ADC destino, origen Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x xxxx   Suma los operandos origen, destino y el valor del indicador de acarreo (0 ó1) y el resultado lo almacena en el operando destino. Se utiliza normalmente para sumar números grandes, de más de 16 bits, en varios pasos, considerando lo que nos llevamos (el acarreo) de la suma anterior. Ejemplo ADC AX, BX
  • 4. ADD (suma). Sintaxis: ADD destino, origen Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x xxxx   Suma los operandos origen y destino almacenando el resultado en el operando destino. Se activa el acarreo si se desborda el registro destino durante la suma. Ejemplos: ADD AX, BX ADD CL, DH  
  • 5. DAA (Ajuste decimal para la suma) .Sintaxis: DAA Indicadores: OF DF IF TF SF ZF AF PF CF ? - - - x xxxx Convierte el contenido del registro AL en un par de valores BCD: si los cuatro bits menos significativos de AL son un número mayor que 9, el indicador AF se pone a 1 y se suma 6 a AL. De igual forma, si los cuatro bits más significativos de AL tras la operación anterior son un número mayor que 9, el indicador CF se pone a 1 y se suma 60h a AL. Ejemplo: ADD AL, CL DAA En el ejemplo anterior, si AL y CL contenían dos números BCD empaquetados, DAA hace que el resultado de la suma (en AL) siga siendo también un BCD empaquetado.
  • 6. INC (Incrementar)   Sintaxis: INC destino Indicadores: O DF IF TF SF ZF AF PF CF x - - - x xxx - Incrementa el operando destino. El operando destino puede ser byte o palabra. Obsérvese que esta instrucción no modifica el bit de acarreo (CF) y no es posible detectar un desbordamiento por este procedimiento (utilícese ZF).   Ejemplos: INC AL INC ES: [DI] INC SS: [BP+4] INC WORD PTR CS: [BX+DI+7]
  • 7.   R E S T A S   AAS (Ajuste ASCII para la resta) Sintaxis: AAS Indicadores: OF DF IF TF SF ZF AF PF CF ? - - - ? ? x ? x Convierte el resultado de la sustracción de dos operandos BCD no empaquetados para que siga siendo un número BCD no empaquetado. Si el nibble inferior de AL tiene un valor mayor que 9, de AL se resta 6, se decrementa AH, AF se pone a 1 y CF se iguala a AF. El resultado se guarda en AL con los bits de 4 a 7 puestos a 0. Ejemplo: SUB AL, BL AAS En el ejemplo, tras la resta de dos números BCD no empaquetados colocados en AL y BL, el resultado (por medio de AAS) sigue siendo un número BCD no empaquetado.
  • 8. CMP (Comparación) Sintaxis: CMP destino, origen Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x xxxx Resta origen de destino sin retornar ningún resultado. Los operandos quedan inalterados, paro los indicadores pueden ser consultados mediante instrucciones de bifurcación condicional. Los operandos pueden ser de tipo byte o palabra pero ambos de la misma dimensión. Ejemplo: CMP BX, MEM_PAL CMP CH, CL
  • 9. DAS (Ajuste decimal para la resta) Sintaxis: DAS Indicadores: OF DF IF TF SF ZF AF PF CF - - - - x xxxx Corrige el resultado en AL de la resta de dos números BCD empaquetados, convirtiéndolo también en un valor BCD empaquetado. Si el nibble inferior tiene un valor mayor que 9 o AF es 1, a AL se le resta 6, AF se pone a 1. Si el nibble mas significativo es mayor que 9 óCF está a 1, entonces se resta 60h a AL y se activa después CF. Ejemplo: SUB AL, BL DAS En el ejemplo anterior, si AL y BL contenían dos números BCD empaquetados, DAS hace que el resultado de la resta (en AL) siga siendo también un BCD empaquetado.  
  • 10. DEC (Decrementar)   Sintaxis: DEC destino Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x xxx- Resta una unidad del operando destino. El operando puede ser byte o palabra. Obsérvese que esta instrucción no modifica el bit de acarreo (CF) y no es posible detectar un desbordamiento por este procedimiento (utilícese ZF).   Ejemplo: DEC AX DEC MEM_BYTE   NEG (Negación). Sintaxis: NEG destino Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x xxxx Calcula el valor negativo en complemento a dos del operando y devuelve el resultado en el mismo operando. Ejemplo: NEG AL  
  • 11. SBB (resta con acarreo) Sintaxis: SBB destino, origen Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x xxxx Resta el operando origen del operando destino y el resultado lo almacena en el operando destino. Si está a 1 el indicador de acarreo además resta una unidad más. Los operandos pueden ser de tipo byte o palabra. Se utiliza normalmente para restar números grandes, de más de 16 bits, en varios pasos, considerando lo que nos llevamos (el acarreo) de la resta anterior. Ejemplo: SBB AX, AX SBB CH, DH
  • 12. SUB (Resta) Sintaxis: SUB destino, origen Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x xxxx Resta el operando destino al operando origen, colocando el resultado en el operando destino. Los operandos pueden tener o no signo, siendo necesario que sean del mismo tipo, byte o palabra. Ejemplos: SUB AL, BL SUB DX, DX
  • 13. MULTIPLICACIONES   AAM (Ajuste ASCII para la multiplicación) Sintaxis: AAM Indicadores: OF DF IF TF SF ZF AF PF CF ? - - - x x ? x ? Corrige el resultado en AX del producto de dos números BCD no empaquetados, convirtiéndolo en un valor BCD también no empaquetado. En AH sitúa el cociente de AL/10 quedando en AL el resto de dicha operación. Ejemplo: MUL BL AAM En el ejemplo, tras el producto de dos números BCD no empaquetados colocados en AL y BL, el resultado (por medio de AAA) sigue siendo, en AX, un número BCD no empaquetado.
  • 14. IMUL (multiplicación entera con signo) Sintaxis: IMUL origen (origen no puede ser operando inmediato en 8086, sí en 286) Indicadores: OF DF IF TF SF ZF AF PF CF x - - - ? ? ? ? X Multiplica un operando origen con signo de longitud byte o palabra por AL o AX respectivamente. Si origen es un byte el resultado se guarda en AH (byte más significativo) y en AL (menos significativo), si origen es una palabra el resultado es devuelto en DX (parte alta) y AX (parte baja). Si las mitades más significativas son distintas de cero, independientemente del signo, CF y OF son activados.   Ejemplo: IMUL BX IMUL CH
  • 15. MUL (multiplicación sin signo)} Sintaxis: MUL origen (origen no puede ser operando inmediato) Indicadores: OF DF IF TF SF ZF AF PF CF x - - - ? ? ? ? X Multiplica el contenido sin signo del acumulador por el operando origen. Si eloperando destino es un byte el acumulador es AL guardando el resultado en AH y AL, si el contenido de AH es distinto de 0 activa los indicadores CF y OF. Cuando el operando origen es de longitud palabra el acumulador es AX quedando el resultado sobre DX y AX, si el valor de DX es distinto de cero los indicadores CF y OF se activan. Ejemplo: MUL BYTE PTR DS: [DI] MUL DX MUL CL
  • 16. Desbordamientos. Este alerta con los desbordamientos en las operaciones aritméticas. Ya que un byte solo permite el uso de un bit de signo y siete de datos (desde -128 hasta +127), una operación aritmética puede exceder con facilidad la capacidad de un registro de un byte. Y una suma en el registro AL, que exceda su capacidad puede provocar resultados inesperados.   Byte por byte Para multiplicar dos números de un byte, el multiplicando esta en el registro AL y el multiplicador es un byte en memoria o en otro registro. Para la instrucción MUL DL, la operación multiplica el contenido del AL por el contenido del DL. El producto generado esta en el registro AX. La operación ignora y borra cualquier información que pueda estar en el AH.
  • 17. Palabra por palabra Para multiplicar dos números de una palabra, el multiplicando esta en el registro AX y el multiplicador es una palabra en memoria o en otro registro. Para la instrucción MUL DX, la operación multiplica el contenido del AX por el contenido del DX. El producto generado es una palabra doble que necesita dos registros: la parte de orden alto (mas a la izquierda) en el DX y la parte de orden bajo (mas a la derecha) en el AX. La operación ignora y borra cualquier información que puede estar en el DX.   Palabra doble por palabra doble. Para multiplicar dos números de palabras dobles, el multiplicando esta en el registro EAX y el multiplicador es una palabra doble en memoria o en otro registro. El producto es generado en el par EDX:EAX. La operación ignora y borra cualquier información que ya este en el EDX.  
  • 18.
  • 19. D I V I S I O N E S   AAD (Ajuste ASCII para la división) Sintaxis: AAD Indicadores: OF DF IF TF SF ZF AF PF CF ? - - - x x ? x ? Convierte dos números BCD no empaquetados contenidos en AH y AL en un dividendo de un byte que queda almacenado en AL. Tras la operación AH queda a cero. Esta instrucción es necesaria ANTES de la operación de dividir, al contrario que AAM. Ejemplo: AAD DIV BL En el ejemplo, tras convertir los dos números BCD no empaquetados (en AX) en un dividendo válido, la instrucción de dividir genera un resultado correcto.
  • 20. DIV (División sin signo) Sintaxis: DIV origen (origen no puede ser operando inmediato). Indicadores: OF DF IF TF SF ZF AF PF CF ? - - - ? ? ? ? ?   Sn considerar el signo, un número contenido en el acumulador y su extensión (AH, AL si el operando es de tipo byte o DX, AX si el operando es palabra) entre el operando fuente. El cociente se guarda en AL o AX y el resto en AH o DX según el operando sea byte o palabra respectivamente. DX o AH deben ser cero antes de la operación. Cuando el cociente es mayor que el resultado máximo que puede almacenar, cociente y resto quedan indefinidos produciéndose una interrupción 0. En caso de que las partes más significativas del cociente tengan un valor distinto de cero se activan los indicadores CF y OF. Ejemplo: DIV BL DIV MEM_PAL  
  • 21. IDIV (División entera) Sintaxis: IDIV origen ( origen no puede ser operando inmediato). Indicadores: OF DF IF TF SF ZF AF PF CF ? - - - ? ? ? ? ? Divide, considerando el signo, un número contenido en el acumulador y su extensión entre el operando fuente. El cociente se almacena en AL o AX según el operando sea byte o palabra y de igual manera el resto en AH o DX. DX o AH deben ser cero antes de la operación. Cuando el cociente es positivo y superior al valor máximo que puede almacenarse (7fh ó7fffh), o cuando el cociente es negativo e inferior al valor mínimo que puede almacenarse (81h u 8001h) entonces cociente y resto quedan indefinidos, generándose una interrupción 0, lo que también sucede si el divisor es 0. Ejemplo: IDIV BL IDIV BX Las operaciones de división básicas son byte entre byte, palabra entre palabra y palabras dobles entre palabra dobles.
  • 22. Palabra entre palabra Aquí el dividendo esta en el AX y el divisor es un byte en memoria o en otro registro. Después de la división, el residuo esta en el AH y el cociente esta en el AL. Ya que un cociente de un byte es muy pequeño -si es sin signo, un máximo de +255 (FFH) y con signo +127 (7FH)- esta operación tiene un uso limitado.   Palabra doble entre palabra .Para esta operación, el dividendo esta en el par DX:AX y el divisor es una palabra en memoria o en otro registro. Después de la división, el residuo esta en el DX y el cociente esta en el AX. El cociente de una palabra permite para datos sin signo un máximo de +32, 767 (FFFFH) y con signo +16, 383 (7FFFH).
  • 23. Palabra cuádruple entre palabra doble. Al dividir una palabra cuádruple entre una palabra doble, el dividendo esta en el par EDX:EAX y el divisor esta en una palabra doble en memoria o en otro registro. Después de la división, el residuo esta en el EDX y el cociente en el AEX. En los ejemplos siguientes, de DIV, los divisores están en un registro, que determina el tipo de operación:
  • 24. EJEMPLO DE PROGRAMA CON INSTRUCCIONES ARITMETICAS