永发信息网

汇编语言加中括号表示什么?

答案:1  悬赏:0  手机版
解决时间 2021-04-08 11:30
汇编语言加中括号表示什么?
最佳答案
一般说来,加方括号 [ ] 表示一种间接的取操作数方式,有点类似于C语言中的指针概念。

第一条指令 ADD AL , [SI] 中,[SI] 表示寄存器间接寻址。
也就是说,与AL中内容相加的加数,不是SI寄存器的内容,而是以SI的内容作为地址指针的内存操作数。
假设SI的内容是1234H,这条加法指令,不是将1234H加到AL里(也加不了,数据类型不对),而是以1234H作为地址,从内存的数据段(DS所指)中,段内偏移地址为1234H的那个内存单元中取出一个字节的数据来,加到AL中。

同样的,第二条指令 MOV [20H], AL,是将AL中的内容传送到内存里的一个单元中去。这个单元的有效地址就是[20H]。
这里,加了方括号的20H,不是运算所用的数据,而是数据的地址。

===================
对问题补充的回复:
AL是不可能加方括号的。
8086汇编中,能加方括号的只有4个寄存器:SI, DI, BX, BP
常数也可以加方括号,比如 [020H]
另外,变量名可以加方括号,但与上面两种情况不同,加了方括号的变量名,意义不变。

至于方括号内,可以出现BX+DI,SI+2这样的表达式,这是一些不同的寻址方式。
SI 是寄存器寻址
[SI]是寄存器间接寻址
[SI+2]是相对的寄存器间接寻址,又称直接变址寻址,它也可以写成2[SI]这样的形式
[BX+SI]是基址变址寻址,也可写成[BX][SI]
[BX+SI+20H]是相对的基址变址寻址,可以写成20H[BX][SI]之类的形式,将20H换成变量名也可以。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怎样让一个男人对自己只有性,而转为爱?
单选题函数的图象大致为A.B.C.D.
谁有火影同人本子,不要百度云,
少女时代私人演唱会大秀身材 台下老板们都张
生源地贷款已提前还清 还要毕业毕业确认申请
跟男孩相亲见面聊什么,第一次相亲见面应该聊
有毒化学物质对人体危害有哪些
psa的1.6thp+6at和通用1.5t+6at哪个更可靠
单选题用固定化酵母细胞发酵葡萄糖溶液时发现
令人痛彻心扉的句子,被爱人背叛后痛彻心扉的
intel酷睿i5 4570配什么主板
博视眼镜地址在哪,我要去那里办事,
过半水煤气用那种橡胶
枇杷树几年才会结果?
清湘照相馆在什么地方啊,我要过去处理事情
推荐资讯
求五月开头的古诗词,5月初5的古诗
下椒图和山兔练哪个比较好qwq
请问童年最高音域多少
渭南到阳泉多少公里,阳泉到渭南市多少公里
wait for my wretched appearance. how can y
北京瑞华通科技有限公司怎么样?
宝马320im什么颜色好看
跟狮子男长时间冷战后分手,还有挽回机会吗
新寻仙里登陆的音乐是什么
超低空飞行的战斗机经常会影响居民生活,有时
如何偷偷查询老公过去跟别人打电话的通话记录
对小升初孩子的祝福语,儿子明天考小升初的祝
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?