smy1988 发表于 2018-3-23 16:27:22

程序能得出正确答案,但是我不懂字节和字传递为什么发生改变

汇编语言(第三版)王爽
实验五 第五题
;******************************************;将a段和b段指的数据依次相加,将结果保存到c段中 ;*******************************************

assume cs:code

a segment
db 1,2, 3,4,5,6,7,8
a ends

b segment
   db 1,2,3,4,5,6,7,8
   b ends

d segment
   db 8 dup(0)
   d ends
   
   
code segment
start:
      mov ax,d
          mov es,ax
          mov ax,a
          mov ds,ax
          mov cx,8
          mov ax,0
          mov bx,0
          
        s:mov dx,ds:
          mov es:,dx
          inc bx
          
          loop s
          
          mov ax,b
          mov ds,ax
          
          mov bx,0
          mov cx,4
          mov dx,0
          
    s0:mov dx,ds:
       add es:,dx
          
           add bx,2
           loop s0
          
           mov ax,4c00h
           int 21h
          
           code ends
           end start
哪位大神求解

Zmynx_2017 发表于 2018-3-23 20:07:01

使用字相加和字节相加应该都可以吧,但是你这里需要注意一个问题,如果你使用add的话,

你没有考虑8+8会有进位的问题,所以最后一个存储单元的存储的内容可能会有问题。其他感觉

没什么差别。
页: [1]
查看完整版本: 程序能得出正确答案,但是我不懂字节和字传递为什么发生改变