汇编的一道简单题 请前辈们看看
原题:依次下一条指令从1221开始:NUMDW12H,0^^^^^^^^^MOVAX,NUMMOVBX,OFFSETNUMMOVCL,BYTEPTRNUM+1MOVCH,...
原题:
依次下一条指令从1221开始:
NUM DW 12H,0
^^^^^^^^^
MOV AX,NUM
MOV BX,OFFSET NUM
MOV CL,BYTE PTR NUM+1
MOV CH,TYPE NUM
题目让求出 AX BX CX 的值
AX=0012H
BX=1221H
我认为CX=0200H 而老师讲的是 CX=1200H
}老师讲的是不是错了呢 难道是我理解错了?
--------------
第二个问题 MOV CL,BYTE PTR NUM+1 ; 这一句 有没有必要加上 BYTE PTR
我理解的是 CL是一个8位的 就没有必要将 NUM+1 再属性操作了
===========
请前辈们 指点指点 谢谢 多多回答
-------唉就这5分了 8好意思 我学好后会再多多帮助别人的 谢谢 展开
依次下一条指令从1221开始:
NUM DW 12H,0
^^^^^^^^^
MOV AX,NUM
MOV BX,OFFSET NUM
MOV CL,BYTE PTR NUM+1
MOV CH,TYPE NUM
题目让求出 AX BX CX 的值
AX=0012H
BX=1221H
我认为CX=0200H 而老师讲的是 CX=1200H
}老师讲的是不是错了呢 难道是我理解错了?
--------------
第二个问题 MOV CL,BYTE PTR NUM+1 ; 这一句 有没有必要加上 BYTE PTR
我理解的是 CL是一个8位的 就没有必要将 NUM+1 再属性操作了
===========
请前辈们 指点指点 谢谢 多多回答
-------唉就这5分了 8好意思 我学好后会再多多帮助别人的 谢谢 展开
4个回答
展开全部
不好意思,很遗憾,第一题,你错了,老师是对的!因为 MOV CH,TYPE ptr NUM 的意思是将num中的第一个字节送到cx,而num在内存中的存储方式是:12,00,00,00(因为8086中高字节在高位,低字节在低位),ch是八位的,不是四位的,我不明白那个20h的答案是怎么出来的!
第二题,需要BYTE PTR ,因为NUM被申明是字类型的,如果不加就是word=byte,类型不匹配,就会报错!
最后给你个建议,以后不能太相信网络,如果我今天不路过,你就要被忽悠了啊!这个对于变程人员来说,机器是最好的老师!
第二题,需要BYTE PTR ,因为NUM被申明是字类型的,如果不加就是word=byte,类型不匹配,就会报错!
最后给你个建议,以后不能太相信网络,如果我今天不路过,你就要被忽悠了啊!这个对于变程人员来说,机器是最好的老师!
展开全部
第一个问题:你正确,你老师错误;
第二个问题:没必要加
第二个问题:没必要加
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询