注册 登录
编程论坛 汇编论坛

一个汇编的问题,求解,困扰好几天了

nihaoburen 发布于 2018-05-14 22:30, 2632 次点击
MOV AL,[BX]与
MOV [BX],AL 这两个的具体区别是什么能举例说明一下吗,实在理解不了

还有MOV [bx-1] ,ah这一个
求举例说明一下,不大懂,在线等
5 回复
#2
Valenciax2018-05-15 06:22
用debug看看吧

假设bx = 200h(蓝框), [bx] = [200h],其内存值 = 1234h (红框)
mov al,[bx] (黄框,就是 ds:200地址上的34,指令执行后,其值放入al (绿框)
mov [bx],al 执行后,al值放入[bx]中
mov [bx-1],al ,[bx-1] = ds:1FF (最下的黄框)

只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2018-5-15 06:23编辑过]

#3
nihaoburen2018-05-15 22:05
回复 2楼 Valenciax
谢谢你的回答,但是我还有以下几个疑问麻烦您看一下
问题一
我是要是想改变一开始BX内存值 1234H,比如变为5678H,应该用什么指令呢,是MOV还是LEA呢?麻烦举例说明一下
问题二
【BX】和【BX-1】的区别是什么呢
问题三
看一下这两张图,里面有问题描述
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

#4
nihaoburen2018-05-17 12:56
版主还在吗?
#5
nihaoburen2018-05-17 12:56
回复 2楼 Valenciax
版主看到追问了吗
#6
Valenciax2018-05-19 11:09

1.
MOV BX,1234H
MOV WORD PTR [BX],5678H

2.
假设BX=200H
[BX] = [200H]
[BX-1] = [200H-1]

3.
代码是楼主写的?
LEA SI,X ;得出0
LEA DI,Y ;得出2
双字节就是WORD,二数加在一起就是,不用ADC
MOV AX,X
ADD AX,Y
MOV RESULT,AX

这堆代码只能用乱七八糟来形容.
1