作业帮 > 综合 > 作业

汇编练习题.DAT1 DB 12H ,34H,56H,78HDB $-DAT1DAT2 DB 10H DUP(1,2,3

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/04 12:14:30
汇编练习题.
DAT1 DB 12H ,34H,56H,78H
DB $-DAT1
DAT2 DB 10H DUP(1,2,3)
......
MOV DX,SIZE DAT1
ADD DX,WORD PTR DAT1+4
求DX=?
世上答案是105H,是怎么得的?
数据在内存中的存储形式如图所示.
DAT1 DB 12H ,34H,56H,78H
          DB  $-DAT1;    $为地址计数器 $-dat1=4
DAT2  DB 10H DUP(1,2,3)
       .
          MOV  DX,SIZE  DAT1   ;size操作符,当其操作的变量是dup复制的时,操作结果为变量的个数,否则为单个变量的字节数,此指令中,dat1不是dup复制的,单个变量的字节数为1,所以dx=01h.
          ADD DX,WORD PTR DAT1+4
;从dat1开始偏移4个字节取一个字与dx相加然后把结果送给dx.dx=dx+0104h,结果dx=0105.