|
主题 : : 第二章测试又没过!!!!!!!!!!!4次了要等8个小时 [待解决] |
回复[ 29次 ]
点击[ 1087次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2008-08-22 14:37 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-08-21 13:29 |
一:在DEBUG中,____选项中的命令可以修改内存单元的内容
1、 a
2、 d
3、 t
4、 u
我选3
二:1000:0 mov ax,8
1000:3 jmp ax
1000:5 mov ax,0
1000:8 mov bx,ax
1000:a jmp bx
CPU从1000:0处开始执行指令当执行完1000:a处的指令后CPU几次修改IP_____。
1、 4
2、 5
3、 6
4、 7
我选3
三:下列说法中正确的是:____
1、 8086CPU采用“段地址*16+偏移地址=物理地址”的寻址模式,所以内存是由一个一个的段组成,每一个段有一个段地址。
2、 物理地址为ffff0H的内存单元的偏移地址可能为ffffH。
3、 一个段的大小可以是8Byte。
4、 在一段没有任何跳转指令的程序中,超出64K的部分将不会被执行。
我选4
四:下列地址信息与0020H:03EFH确定的内存地址不同的是_____。
1、 5EFH
2、 203H:00EFH
3、 005EH:000FH
4、 0002H:05CFH
我选2
五:下面哪个是错误的指令_____
1、 mov ax,bx
2、 add al,0f5H
3、 mov al,bh
4、 add al,100H
我选4
错了一个 55555555555555555 | | |
|
|
|
|
[第1楼]
[ 回复时间:2008-08-22 16:50 ]
[引用]
[回复]
[ top ] | |
荣誉值:56
信誉值:0
注册日期:2008-01-19 13:58 |
|
|
|
|
|
[第2楼]
[ 回复时间:2008-08-23 08:26 ]
[引用]
[回复]
[ top ] | |
荣誉值:56
信誉值:14
注册日期:2008-08-20 11:21 |
|
|
|
|
|
[第3楼]
[ 回复时间:2008-08-23 08:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-08-21 13:29 |
T照样可以改变内存吧,这答案本身就是模棱两可的,不过答案确实是选A今天通过了 | | |
|
|
|
|
[第4楼]
[ 回复时间:2008-08-23 08:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:56
信誉值:14
注册日期:2008-08-20 11:21 |
呵呵,那也是,a能写入指令,但也要通过t来执行。希望能谁能解释下 | | |
|
|
|
|
[第5楼]
[ 回复时间:2008-08-23 16:00 ]
[引用]
[回复]
[ top ] | |
荣誉值:6
信誉值:2
注册日期:2007-08-08 14:22 |
A是真正的向内存单元写入数据,而T只是执行CS:IP单元的指令,改变内存单元的是汇编指令,而不是T命令 | | |
|
|
|
|
[第6楼]
[ 回复时间:2008-08-26 16:24 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:5
注册日期:2008-08-14 16:19 |
我刚做过题,也错一个,就是第二题,二:1000:0 mov ax,8
1000:3 jmp ax
1000:5 mov ax,0
1000:8 mov bx,ax
1000:a jmp bx
CPU从1000:0处开始执行指令当执行完1000:a处的指令后CPU几次修改IP_____。
1、 4
2、 5
3、 6
4、 7
现在明白了改6次
我第一题选A. | | |
|
|
|
|
[第7楼]
[ 回复时间:2008-08-26 16:31 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:5
注册日期:2008-08-14 16:19 |
回答一下第4楼的问题:
用a向内存单元写入指令,就已经是修改内存单元的内容了!!!!
相对来讲t可以改变内存单元内容,而不是修改!! | | |
|
|
|
|
[第8楼]
[ 回复时间:2008-09-02 18:05 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-08-18 14:35 |
|
|
|
|
|
[第9楼]
[ 回复时间:2008-09-06 17:39 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-09-03 00:18 |
|
|
|
|
|
[第10楼]
[ 回复时间:2008-09-09 16:40 ]
[引用]
[回复]
[ top ] | |
荣誉值:8
信誉值:2
注册日期:2008-09-04 17:29 |
一:在DEBUG中,____选项中的命令可以修改内存单元的内容
1、 a
2、 d
3、 t
4、 u
答:全能。
我刚做过题,也错一个,就是第二题,二:1000:0 mov ax,8
1000:3 jmp ax
1000:5 mov ax,0
1000:8 mov bx,ax
1000:a jmp bx
CPU从1000:0处开始执行指令当执行完1000:a处的指令后CPU几次修改IP_____。
1、 4
2、 5
3、 6
4、 7
答:未知。 | | |
|
|
|
|
[第11楼]
[ 回复时间:2008-09-10 10:46 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:14
注册日期:2008-09-03 11:12 |
二:1000:0 mov ax,8
1000:3 jmp ax
1000:5 mov ax,0
1000:8 mov bx,ax
1000:a jmp bx
CPU从1000:0处开始执行指令当执行完1000:a处的指令后CPU几次修改IP_____。
1、 4
2、 5
3、 6
4、 7
这一题我觉得应该先1呀
mov ax,8
jmp ax ;跳到了1000:8
mov bx,ax
jmp bx ;又跳到了1000:8
因为题上说的是执行完1000:a处的指令后CPU几次修改IP,所以应该是4次
如果题上说的是执行到1000:a处的指令后CPU几次修改IP,所以应该是3次
不知道我说的对不对呢? | | |
|
|
|
|
[第12楼]
[ 回复时间:2008-09-23 15:53 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:8
注册日期:2008-09-15 09:10 |
求助:请问下面个问题为什么不对;
1、 8086CPU采用“段地址*16+偏移地址=物理地址”的寻址模式,所以内存是由一个一个的段组成,每一个段有一个段地址。
3、 一个段的大小可以是8Byte。 | | |
|
|
|
|
[第13楼]
[ 回复时间:2008-09-26 17:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:5
信誉值:0
注册日期:2008-07-04 19:03 |
从物理机制上讲,只有A是真正地修改内存单元内容.而其它的命令,只是修改了个别寄存器值.如T修改了IP寄存器值....,U D 也是如此而已. | | |
|
|
|
|
[第14楼]
[ 回复时间:2010-07-08 17:52 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-07-07 11:23 |
我感觉debug命令里,E和A是直接的修改内存单元的内容,而T是根据指令的内容,在执行时,修改了内存的内容。我原来一直以为是T,今天看了几个帖子,慢慢琢磨着感觉A比T更适合题意。 | | |
|
|
|
|
[第15楼]
[ 回复时间:2010-07-20 23:48 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-07-19 03:17 |
|
|
|
|
|
[第16楼]
[ 回复时间:2010-07-24 18:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:1
注册日期:2010-07-15 19:25 |
一:在DEBUG中,____选项中的命令可以修改内存单元的内容
1、 a
2、 d
3、 t
4、 u
选3的是执行吧 我选的是1 过了 | | |
|
|
|
|
[第17楼]
[ 回复时间:2010-07-30 17:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-07-28 15:50 |
我想问 一个段 大小 为什么不能是 8BYTE。。。。。看来我看书不仔细。。。只看到 必须 小于等于 64KB | | |
|
|
|
|
[第18楼]
[ 回复时间:2010-07-31 13:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-07-28 20:28 |
|
|
|
|
|
[第19楼]
[ 回复时间:2010-07-31 16:58 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-07-28 15:50 |
我还是 不懂。。。。。笨啊。。不好意思。。。其实 地址是 16的 倍数 就是说 一个 段最小是 16B? | | |
|
|
|
|
[第20楼]
[ 回复时间:2010-08-05 21:54 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:6
注册日期:2010-07-31 15:39 |
回复:[第19楼]
------------------
我的感觉是段是人为分出来的,最长是因为偏移地址的限制,所以不能一个段是不能超过2的16次,即64KB,而一个段不应该是8Byte,而只能是64KB,但是64KB之后的指令要是不断执行的话,也会被执行,因为段是人为分出来的(偏移地址不能我们说了算,但段地址可以我们说了算,只要它是16的倍数)讨论而已 | | |
|
|
|
|
[第21楼]
[ 回复时间:2010-10-28 17:55 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-13 10:24 |
弱弱的问一下什么是段?段和物理地址有什么关系?书第2.8节写的很清楚了吧?你们去看看是不是一个段可以为8Byte? | | |
|
|
|
|
[第22楼]
[ 回复时间:2010-10-31 12:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-31 12:24 |
|
|
|
|
|
[第23楼]
[ 回复时间:2010-10-31 12:39 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-31 12:24 |
回复:[第21楼]
------------------
段最小是16比特 8比特一个内存单元 | | |
|
|
|
|
[第24楼]
[ 回复时间:2010-10-31 13:41 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-31 12:24 |
回复:[第21楼]
------------------
段最小是16比特 8比特一个内存单元
------------------
回复:
说错了 因该是 段是不存在的 所以没有大小 只有段地址这个概念(记住只是一个地址罢了地址是没有大小这个概念的)
如果存在的话 段的最小值应该是8bit 那么选8byte不会错 | | |
|
|
|
|
[第25楼]
[ 回复时间:2010-11-03 10:57 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2010-11-01 15:17 |
|
|
|
|
|
[第26楼]
[ 回复时间:2010-11-03 16:59 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-28 14:05 |
第一题错了,T是执行CS:IP指向内存地址的指令,应该选A,a是用汇编指令形式修内存的,在计算机中,指令和数据都是以二进制码形式保存的,所以指令和数据在计算机看来是等价的,在具体应用山不同而已 | | |
|
|
|
|
[第27楼]
[ 回复时间:2010-11-11 18:16 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-11-06 01:57 |
|
|
|
|
|
[第28楼]
[ 回复时间:2010-11-19 20:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:2
注册日期:2010-11-18 22:02 |
第一题是a吧,d是查看,t是执行,u是翻译;楼主其他题目都对.下面这几题比较有问题,我也说一下我的答案.
第二题是6次,1000:5内存单元被跳过没执行,之后一条指令算一次,遇到JMP算两次,我是这么认为的;第三题:1.段的划分来自CPU,内存并不分段,选项错,2.IP为ffff后,物理地址最后一位应该是F,选项错,3.一个段的最大长度是64KB这没问题,定位段的起始地址也就是基础地址,基础地质=段地址*16所以是一定是16的倍数,依理得:起始地址最小应该是10H!!!所以8B不在这个范围内,至少要第10个内存单元,23楼和24楼理解错了,微机存储器的容量是以字节为最小单位来计算的,现在面对的是内存不是晶体管,不能用比特来衡量; | | |
|
|
|
|
[第29楼]
[ 回复时间:2010-11-29 11:40 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:4
注册日期:2010-11-25 19:35 |
0算不算是16的倍数?16乘0等于0。。所以段地址可以为0h。。再乘16。。还是0h。。可以为8B | | |