Programación de operación de división de números BCD comprimido de ensamblaje
Segmento de datos
da1 dw 0781h,?
da2 db 10h,?
Fin de datos p>
Segmento de código p>
Inicio:
mov ax, data
mov ds, ax
mov ax, da1; convertir miles, guardar en dx p>
mov bx, 1000
mov cl, 12
shr ax, cl
mul bx p>
mov dx, ax
mov ax, da1; convertir dígitos de decenas, agregar a dx
mov al, ah
y al, 00001111b
mov bl, 100
mul bl
add dx, ax
mov ax, da1; convierte el dígito de las decenas y suma a dx;
mov cl, 4
shr al, cl
mov bl, 10
mul bl
agregar dx, ax
mov ax, da1; convertir un solo dígito, agregar a dx
xor ah, ah
y al, 00001111b
agregue dx, ax
mov al, da2; convierta el dígito de las decenas y guárdelo en bl
mov cl, 4
shr al, cl
mov ch, 10
mul ch
mov bl, al
mov al, da2; convierte un solo dígito y suma a bl
y al, 00001111b
agrega bl, al
mov dx, ax; pasa dx a ax para dividir. Pasa el número a ax para dividir.
div bl
mov ax, 4c00h
int 21h
Fin del código
fin inicio