. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(CPU工作原理)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  第二章 测试题 百思不得其解,高手帮忙!  [待解决] 回复[ 3次 ]   点击[ 472次 ]  
ameteur
[帖 主]   [ 发表时间:2011-08-13 11:24 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-08-04 16:35
在第二章测试题中,有一道选择题有一个先项是:一个段的大小可以是8Byte.
很多说这是错,我不知,错在何处,想了很久。在书中34页,2.12代码段中:
mov ax,0000
add ax,0123
mov bx,ax
jmp bx

书中说这个10个字节,那为什么8个字节就不行呢,在论坛有人说:8byte 即是8bit我不认同,8个bit才构成1个byte,请高手讲解一下,谢谢。
chinatree
[第1楼]   [ 回复时间:2011-08-13 12:12 ]   [引用]   [回复]   [ top ] 
荣誉值:118
信誉值:0
注册日期:2011-07-07 22:59
是的呀,一个段最小可以是8字节,但是实际上一个段在内存中最小要占16字节,因为当偏移地址不动,把段地址加一等于整个段加了16字节,8字节是64位,注意它们后面的单位大小写是有区别的
ameteur
[第2楼]   [ 回复时间:2011-08-14 09:47 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-08-04 16:35
谢谢,明白了,书中只是举例说明一个段,并没有结合实际来讲,也就是说,在8086CPU中,一个段的大小区间在16b~64KB.是这样吗?
chinatree
[第3楼]   [ 回复时间:2011-08-14 12:34 ]   [引用]   [回复]   [ top ] 
荣誉值:118
信誉值:0
注册日期:2011-07-07 22:59
是的,但是是大写的B,当然这是说实际占用内存的情况
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved