汇编语言,段地址,问题。
1该段的起始地址为10000h,段地址1000h,(为啥是1000,不是10000),大小为100h(为啥是100,真的想不明白啊)2他们的起始地址为10000和1000...
1该段的起始地址为10000h,段地址1000h,(为啥是1000,不是10000),大小为100h(为啥是100,真的想不明白啊)
2他们的起始地址为10000和100080,段地址为1000和1008,大小都为80h,数都不是同一个数,为啥大小都是80呢?这个更想不明白啊 展开
2他们的起始地址为10000和100080,段地址为1000和1008,大小都为80h,数都不是同一个数,为啥大小都是80呢?这个更想不明白啊 展开
展开全部
把地址 10000H ~ 100FFH 的存储器单元,当做一个段。
该段的起始地址为10000H,段地址1000H,
(为啥是1000,不是10000)?
因为段地址是 4 位16进制数,不可能是 5 位。
大小为100H,(为啥是100,真的想不明白啊)
计算如下:
100FFH -10000H + 1 = 100H。
你想想,200,到 299,共有 100 个数吧 ? 就是这么算出来的。
---------------------------
2他们的起始地址为10000和100080,段地址为1000和1008,大小都为80h,数都不是同一个数,为啥大小都是80呢?
计算如下:
1007FH -10000H + 1 = 80H
100FFH -10080H + 1 = 80H
它们是相同的。
该段的起始地址为10000H,段地址1000H,
(为啥是1000,不是10000)?
因为段地址是 4 位16进制数,不可能是 5 位。
大小为100H,(为啥是100,真的想不明白啊)
计算如下:
100FFH -10000H + 1 = 100H。
你想想,200,到 299,共有 100 个数吧 ? 就是这么算出来的。
---------------------------
2他们的起始地址为10000和100080,段地址为1000和1008,大小都为80h,数都不是同一个数,为啥大小都是80呢?
计算如下:
1007FH -10000H + 1 = 80H
100FFH -10080H + 1 = 80H
它们是相同的。
展开全部
1、8086CPU中的段寄存器最多只能存储4位16进制的数字(范围0-ffffH),10000H是5位16进制数,段寄存器放不下的。
2、换算成物理地址时,段地址寄存器存储的值要乘以16。
10000H-1007FH、10080FH-100FFH这两个段的长度就是:末地址-首地址+1
1007F-10000+1=80H
100FF-10080+1=80H
80H是这两个段的长度,俩段都有80H个内存单元,很好理解。
如果还不懂,建议看看王爽写的《汇编语言 第2版》
2、换算成物理地址时,段地址寄存器存储的值要乘以16。
10000H-1007FH、10080FH-100FFH这两个段的长度就是:末地址-首地址+1
1007F-10000+1=80H
100FF-10080+1=80H
80H是这两个段的长度,俩段都有80H个内存单元,很好理解。
如果还不懂,建议看看王爽写的《汇编语言 第2版》
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询