汇编语言程序设计——循环结构例6

汇编语言程序设计——循环结构例6

设计目标

编程序实现两个多字节数相加运算。

Z = X + Y ,设 X = 5488114433225634H,Y = 3499754783645231H,则 Z = 8921868BB686A865H

设计思路

(1)在数据段中定义两个多字节变量,低字节单元存放低位,高字节单元存放高位;

(2)字节的个数 N 采用 EQU 赋值伪指令获得;

(3)多字节相加用带进位加指令 ADC;

​; 6-6.asm 两个多字节数相加运算
data segment
  x db 34h,56h,22h,33h,44h,11h,88h,54h
  y db 31h,52h,64h,83h,47h,75h,99h,34h
  n equ $-y            ;$表示当前偏移地址,则n=字节个数
  z db n dup(?)
data ends
code segment
	assume cs:code,ds:data
start: mov ax,data
       mov ds,ax
       mov cx,n
       mov bx,0
       clc         ;将进位标志CF清0
    let1:
       mov al,x[bx]    ;从低位开始带进位加
       adc al,y[bx]
       mov z[bx],al
       inc bx
       loop let1
       mov ah,4ch
       int 21h
code ends
end start

debug 结果:

汇编语言程序设计——循环结构例6_第1张图片

你可能感兴趣的:(汇编语言)