汇编语言MOV指令

MOVAX,BXMOVAH,BXMOVDX,AL第二句都错误,,那么第三句呢(8位数据放到16位REG里),,若正确,放高8位还是低8位呢???高8位都补0???... MOV AX,BX
MOV AH,BX
MOV DX,AL

第二句都错误,,那么第三句呢(8位数据放到16位REG里),,

若正确,放高8位还是低8位呢??? 高8位都补0???
展开
 我来答
小耳朵爱聊车
高粉答主

2019-10-31 · 说的都是干货,快来关注
知道大有可为答主
回答量:7378
采纳率:100%
帮助的人:300万
展开全部

汇编语言中,MOV指令是数据传送指令,也是最基本的编程指令,用于将一个数据从源地址传送到目标地址(寄存器间的数据传送本质上也是一样的)。其特点是不破坏源地址单元的内容。  

例如:  

1、MOVAX,2000H;将16位数据2000H传送到AX寄存器。

2、MOVAL,20H;将8位数据20H传送到AL寄存器。

3、MOVAX,BX;将BX寄存器的16位数据传送到AX寄存器。

4、MOVAL,[2000H];将2000H单元的内容传送到AL寄存器。

扩展资料:

汇编语言特点:

1、机器相关性

这是一种面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计的。因为是机器指令的符号化表示,故不同的机器就有不同的汇编语言。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。

2、高速度和高效率

汇编语言保持了机器语言的优点,具有直接和简捷的特点,可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等,且占用内存少,执行速度快,是高效的程序设计语言

参考资料来源:百度百科-汇编语言

pieryon
2015-08-30 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14411 获赞数:166864
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部

MOV在汇编语言中是 数据传送指令。

用法如下:

mov — Move (Opcodes: 88, 89, 8A, 8B, 8C, 8E, ...)

mov指令将第二个操作数(可以是寄存器的内容、内存中的内容或值)复制到第一个操作数(寄存器或内存)。mov不能用于直接从内存复制到内存,其语法如下所示:

mov <reg>,<reg>
mov <reg>,<mem>
mov <mem>,<reg>
mov <reg>,<const>
mov <mem>,<const>

Examples
mov eax, ebx — 将ebx的值拷贝到eax
mov byte ptr [var], 5 — 将5保存找var指示内存中的一个字节中

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
NJGQZF
推荐于2017-09-15 · TA获得超过1.1万个赞
知道大有可为答主
回答量:3165
采纳率:0%
帮助的人:1212万
展开全部
在汇编语言中,MOV指令是数据传送指令,也是最基本的编程指令,用于将一个数据从源地址传送到目标地址(寄存器间的数据传送本质上也是一样的)。其特点是不破坏源地址单元的内容。
例如:
MOV AX,2000H;将16位数据2000H传送到AX寄存器
MOV AL,20H;将8位数据20H传送到AL寄存器
MOV AX,BX;将BX寄存器的16位数据传送到AX寄存器
MOV AL,[2000H];将2000H单元的内容传送到AL寄存器
需要注意的是:
(1)两个存储单元之间不能直接传送数据,即:MOV指令只允许一个操作数在存储器中。MOV [SI],[2000H];这是错误的
(2)MOV指令中立即数不能直接传送给段寄存器(CS、DS、SS、ES)和IP;段寄存器之间不能直接传送。MOV IP,2000 H ;这是错误的
(3)CS和IP不能作为目的操作数。MOV CS,AX ;这是错误的
(4)MOV指令中立即数不能作目标操作数。MOV 2000H,[SI] ;这是错误的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吴勇一家人
2012-03-09 · TA获得超过2407个赞
知道小有建树答主
回答量:304
采纳率:50%
帮助的人:73万
展开全部
第三条是合法指令!!!!
MOV指令有以下几条具体规定,其中有些规定对其它指令也同样有效。
1)、两个操作数的数据类型要相同,要同为8位、16位或32位;如:MOV BL, AX等是不正确的;
2)、两个操作数不能同时为段寄存器,如:MOV ES, DS等;
3)、代码段寄存器CS不能为目的操作数,但可作为源操作数,如:指令MOV CS, AX等不正确,但指令MOV AX, CS等是正确的;
4)、立即数不能直接传给段寄存器,如:MOV DS, 100H等;
5)、立即数不能作为目的操作数,如:MOV 100H, AX等;
6)、指令指针IP,不能作为MOV指令的操作数;
7)、两个操作数不能同时为存储单元,如:MOV VARA, VARB等,其中VARA和VARB是同数据类型的内存变量。
对于规定2、4和7,我们可以用通用寄存器作为中转来达到最终目的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鱼缸扁粉菜
2012-03-09 · TA获得超过741个赞
知道小有建树答主
回答量:595
采纳率:0%
帮助的人:387万
展开全部
我感觉你有误区。。计算机必须保证操作运算的对象数据类型是一样的才可以进行正常的操作。。除非有特殊的规定,八位的跟 八位的运算,十六位的跟十六位的运算。。。本身第二句就是错了,第三句也没 有理由是完全正确的你说呢?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式