用串操作指令实现将内存定义好的两个字节串BUF1和BUF2相加后,存放到另一个串BUF3中的功能。

MOVCX,COUNTMOVSI,OFFSETBUF1MOVDI,OFFSETBUF3MOVBX,OFFSETBUF2AGAIN:LODSBADDAL,[BX]STOSB... MOV CX,COUNT
MOV SI,OFFSET BUF1
MOV DI,OFFSET BUF3
MOV BX,OFFSET BUF2
AGAIN:LODSB
ADD AL,[BX]
STOSB
INC BX
DEC CX
JNZ AGAIN
哪位高手能解释下每步都是干嘛的
谢谢
展开
 我来答
匿名用户
2013-07-30
展开全部
MOV CX,COUNT cx存放count地址
MOV SI,OFFSET BUF1 计算出BUF1地址存入SI
MOV DI,OFFSET BUF3 计算出BUF2地址存入di
MOV BX,OFFSET BUF2 计算出BUF3地址存入bx
AGAIN:LODSB 是将 ds:[si] 处的字节送到 AL 中, si 将随 DF 的设置 '
增 1'(DF=0,使用 CLD 指令设置) 或者是 '减 1'(DF=1,
使用 STD 指令设置) 而指向下一个字节
ADD AL,[BX] 将地址[BX]中的数值与al相加
INC BX bx加1
DEC CX 计数器cx减1
JNZ AGAIN cx非0则循环跳转到标号AGAIN 处继续,如果cx为0则跳出循环
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式