|
主题 : : 关于检测点3.1 Debug模式中使用的非 第二排数据 [待解决] |
回复[ 10次 ]
点击[ 518次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2014-09-15 15:59 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2014-09-15 15:52 |
1.在Debug中,用“d 0:0 1f”查看内存,结果如下
0000:000f 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 60
0010:001f 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88
本来第二排是0000:0010我自己修改过来的
mov ax,1 mov ds,ax 这样ds 就被修改为1
mov ax,[0] 这步执行后 ax的值是018B 然后我就用d去查看 1:0位置去了 果然是8B 01 这是为什么?
0001:0000 8B 01 70 00 B9 06 0E 02-40 07 0E 02 FF 03 0E 02
0001:0010 46 07 0E 02 0A 04 0E 02-3A 00 9C 03 54 00 9C 03
计算结果是
mov ax,1
mov ds,ax
mov ax,[0] ax=018B
mov bx,[1] bx=7001
mov ax,bx ax=7001
mov ax,[0] ax=018B
mov bx,[2] bx=0070
add ax,bx ax=01FB
add ax,[4] ax=08B4
mov ax,0 ax=0
mov al,[2] ax=0070
mov bx,0 bx=0
mov bl,[c] bx=00FF
add al,bl ax=006F | | |
|
|
|
|
[第1楼]
[ 回复时间:2014-09-16 01:56 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:0
注册日期:2014-08-02 21:25 |
我怎么感觉楼主在说:
苹果是水果。
猴子是动物,为什么?
楼主的问题是什么呢? | | |
|
|
|
|
[第2楼]
[ 回复时间:2014-10-07 20:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2014-10-07 20:00 |
哈哈,跟我一样,对于没有任何语言基础的,开头(“d 0:0 1f”查看内存),压根就不理解的,我也是想了好久才发现,我的电脑的这个地址和
0000:000f 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 60
0010:001f 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88
是不一样的,想要计算下面的题,先要改下(“d 0:0 1f”查看内存)这个,改成和上面那些一样才可以
即(-e 0000:0)
下面计算答案就全对了 | | |
|
|
|
|
[第3楼]
[ 回复时间:2014-10-15 11:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2014-09-20 15:47 |
这个是孝对字和字节的理解,不用上机,把自已当cpu,照着书上给出的数据自已填上去,加法就用计算器或口算,再用debug验证一下。 | | |
|
|
|
|
[第4楼]
[ 回复时间:2014-11-15 12:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2014-11-08 19:06 |
段地址不是说是16的倍数吗,为什么是0000呢,你们不觉得怪吗?这个
mov ax,1
mov ds,ax
mov ax,[0000]
其中ds=?你说是0001,但它不是16的倍数呀,这是怎么搞的呀 | | |
|
|
|
|
[第5楼]
[ 回复时间:2014-11-15 12:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2014-11-08 19:06 |
我上面的内容错了,看了书发现是段的起始地址(即基础地址)是16的倍数,不是段地址是16的倍数! | | |
|
|
|
|
[第6楼]
[ 回复时间:2014-11-15 12:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2014-11-08 19:06 |
回复:[第4楼]
------------------
d 0:0 1f查看内存不可能有起始地址分别为0000:000f和起始地址为0010:001f.应该是0000:000f到0000:001f | | |
|
|
|
|
[第7楼]
[ 回复时间:2017-08-11 18:39 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2017-08-11 18:33 |
我就觉得这题的上部分和下部分不对应,不实操,手动没法计算,楼主的答案 是实操答案还是自己手动计算的答案 | | |
|
|
|
|
[第8楼]
[ 回复时间:2017-08-11 18:43 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2017-08-11 18:33 |
回复:[第4楼]
------------------
书上读的内存是0000:0的,而程序要读的内存是0001:0的,你告诉我,不实操,怎么知道0001:0内存里是什么?? | | |