|
主题 : : 这道题想不明白大家帮看下!!! [待解决] |
回复[ 7次 ]
点击[ 438次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2010-01-10 16:23 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-01-08 17:25 |
2.下列指令的书写正确的是:__3__
1、 push al
2、 mov cs:[0],ds:[10]
3、 pop si
4、 mov ds:[0],2
第4项为什么不正确呢? 帮帮忙啊!!! | | |
|
|
|
|
[第1楼]
[ 回复时间:2010-01-10 17:00 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:6
注册日期:2010-01-07 10:37 |
|
|
|
|
|
[第2楼]
[ 回复时间:2010-01-10 20:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:6
注册日期:2010-01-07 10:37 |
|
|
|
|
|
[第3楼]
[ 回复时间:2010-01-10 21:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46 |
第 4 的问题是因为编译不知道数据传递的类型,需要按下述方式指出:
mov byte ptr ds:[0],2
或
mov word ptr ds:[0],2 | | |
|
|
|
|
[第4楼]
[ 回复时间:2010-01-12 00:20 ]
[引用]
[回复]
[ top ] | |
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51 |
1,错。因为栈操作是是以字为单位的。
2,错。因为8086CPU没有内存地址间的传送, 必须借助一个寄存器
3,对
4,错。mov不支持立即数和内存单元直接传送数据。同样需要一个寄存器。 | | |
|
|
|
|
[第5楼]
[ 回复时间:2010-01-18 23:53 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:4
注册日期:2009-10-17 21:41 |
楼上的第四个理解错了,MOV可以将立即数传送给内存单元,比如MOV WORD PTR [0],09H
其他都正确 | | |
|
|
|
|
[第6楼]
[ 回复时间:2010-02-04 20:55 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:0
注册日期:2010-02-02 22:32 |
立即数的传送必须要有一个寄存器!第4个它是送给一个内存单元,所以说不可以 | | |
|
|
|
|
[第7楼]
[ 回复时间:2010-02-04 22:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46 |
回复:[第6楼]
------------------
-a
13AE:0100 mov byte ptr [200],20
13AE:0105 | | |