编程计算以下8个数据的和,结果存在ax寄存器中:
0123H,0456H,0789H,0abcH,0defH,0fedH,0cbaH,0987H
code
1 | assum cs:code |
dw的含义是定义字型数据,dw即“define word”,在这里,使用dw定义了8个字型数据,它们所占的内存空间的大小为16个字节。
程序在运行的时候cs中存放代码段的段地址,所以可以从cs中得到它们的段地址
因为用dw定义的数据处于代码段的最开始,所以偏移地址为0,这8个数据就在代码段的偏移0、2、4、6、8、A、C、E处。程序运行时,它们的地址就是CS:0、CS:2、CS:4、CS:6、CS:8、CS:A、CS:C、CS:E。
用bx存放加2递增的偏移地址用循环来进行累加。在循环开始前,设置(bx)=0,CS:BX指向第一个数据存放的字单元。每次循环中(bx)=(bx)+2,CS:BX指向下一个数据所在的字单元。