找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1420|回复: 6
打印 上一主题 下一主题
收起左侧

问一个关于汇编的一个疑问,求解答,在线等

[复制链接]
跳转到指定楼层
楼主
ID:289777 发表于 2018-5-14 22:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MOV AL,[BX]与
和MOV [BX],AL 这两个的具体区别是什么能举例说明一下吗,实在理解不了

还有MOV [bx-1] ,ah这一个
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:155507 发表于 2018-5-14 23:10 | 只看该作者
假设指令执行前,AL里的数据内容是 12H, DS:[BX]字节内存单元的内容是56H
MOV   AL,  [BX]
将内存数据(以BX内容为地址)传送到AL寄存器里。
指令执行后,AL的内容变得与内存[BX]的内容一样,都是56H。

假设指令执行前,AL里的数据内容是 12H, DS:[BX]字节内存单元的内容是56H
MOV   [BX],   AL
将AL寄存器里存放的内容传送到内存去,内存地址为DS:[BX]
指令执行后,那个内存单元的内容变得跟AL中的一样,都是12H。
回复

使用道具 举报

板凳
ID:111634 发表于 2018-5-15 10:58 | 只看该作者
"MOV   AL,  [BX]",非标,什么地方学来的?“[BX]”,51汇编没有这种格式,除非非标的编译器。
回复

使用道具 举报

地板
ID:289777 发表于 2018-5-15 13:00 | 只看该作者
angmall 发表于 2018-5-14 23:10
假设指令执行前,AL里的数据内容是 12H, DS:字节内存单元的内容是56H
MOV   AL,  
将内存数据(以BX内容 ...

好的,谢谢但是还有一个问题 MOV [BX -1]  AL又是什么意思呢?
MOV BX AL 和MOV 【BX】 AL的区别的?
回复

使用道具 举报

5#
ID:289777 发表于 2018-5-15 13:00 | 只看该作者
angmall 发表于 2018-5-14 23:10
假设指令执行前,AL里的数据内容是 12H, DS:字节内存单元的内容是56H
MOV   AL,  
将内存数据(以BX内容 ...

数据内容和内存单元内容有什么不同?
回复

使用道具 举报

6#
ID:155507 发表于 2018-5-16 19:10 | 只看该作者
这是x86汇编指令

这是CPU内部寄存器之间的数据传送。
MOV AL,[BX]就是把地址为寄存器DS:BX的里面的值赋给AL (间接寻址操作)。
MOV [BX],AL就是把AL的值赋给名为DS:BX(间接寻址)的地址中。
MOV [BX-1],AH就是把寄存器AH的值赋给名为(DS:BX-1)的地址中。
总结,凡是遇到[]这种你就把里面寄存器的数值当成一个内存中的地址就行了。

寄存器的数据是在CPU内, 内存单元内容是在外部RAM数据存储器, 内存是挂在CPU外面的数据总线上的


MOV AL,DH    ;AL←DH    (8位)
MOV BX,AX    ;BX←AX    (16位)

不允许传送8位到16位
MOV BX, AL

书上没有吗?为什么不看书?网上的解答不会完整系统
回复

使用道具 举报

7#
ID:331521 发表于 2018-5-16 19:22 | 只看该作者
这题我给你举例赋值说明吧。愿你能理解。
(bx)=03,     (3)地址内内容为5,(bl)=3
mov BX,2;使(BX)=2,(不影响下句的情况下)
mov [BX],BL;3号地址内容变为3,(不影响下句的情况下)
mov AL,[BX];AL的内容变为03。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表