监测点3.1的问题
本帖最后由 583413088 于 2011-7-19 09:24 编辑大家看看怎么回事为什么
0000:0000 0000:0010
偏移地址只有十个数的差距,能够存放16个数据 麻烦大家能给我解释下吗基础没学好都看不懂
这其中是咋计算的偏移地址10个字节与其中存放的16数据什关系啊
谁能给俺解释下
10是16进制! 对呀,我也搞不懂,唉 计算机是以十六进制为操作数 所以上面的 10 也是以十六进制的形态出现在CPU运算中这里的10所代表的十进制为 16 也就是上面为何能能存 16个数据的原因所在{:5_95:} 计算机是以十六进制为操作数 所以上面的 10 也是以十六进制的形态出现在CPU运算中这里的10所代表的十进制为 16 也就是上面为何能能存 16个数据的原因所在
那这十六个数据每个都占用 多大的空间啊 计算机是以2进制显示的..每4个2进制数可以显示0~15(比如1111=15)就是16个数
所以一字节为8位,用2个16进制数可以显示
16进制数为0,1,2,3,4,5,6,7,8,9,a(10),b(11),c(12),d(13),e(14),f(15) 583413088 发表于 2011-7-16 20:24 static/image/common/back.gif
那这十六个数据每个都占用 多大的空间啊
想总结出来相对有点难{对本人来说} 不过 1.6 存储单元 这一小章节 你好好再了解下 应该能够让你清楚16个数据所使用的空间是多少了 如未明所意 咱事后交流{:5_109:}
一个内存单元是一个字节 。 那就是说一行占用 16个字节喽是这样的吗 64kb的话就有4096行数据这是最大的一个段吗? 因为16位CPU最大寻址是64KB,1KB=1024B。
所以64KB*1024B=65535b
段最大只能在0000到FFFF之间。
han 死 了慢慢来 答案:
ax = 2662H(因为此时DS的地址为0001H,偏移地址为0H,此时ax的值来源于内存地址为1:0的地址,即为1*16+0=0010H)
bx =E626H (因为此时DS的地址为0001H,偏移地址为1,此时ax的值来源于内存地址为1:0的地址,即为1*16+1=0011H)
ax =2662H
bx =D6E6H
ax = FD48H
ax = 2C14H
ax = 0H
ax = 00E6H
bx = 0H
bx =0026H
ax = 000CH
页:
[1]