Chinaunix首页 | 论坛 | 博客
  • 博客访问: 901407
  • 博文数量: 113
  • 博客积分: 3160
  • 博客等级: 少校
  • 技术积分: 1801
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-19 10:09
文章分类

全部博文(113)

分类: LINUX

2012-04-30 18:24:15

 

1.对于一个物理地址,最多能对应多少个段:偏移
 
 
假设段值为XXXXH,偏移为YYYYH,假设XH + YH = AH;
那么物理地址为=XXXXH * 10H + YYYYH = XAAAYH.
对于一个固定的物理地址,那么XAAAYH的最高半字节和最低半字节是不会发生变化的,与可能变化的只有中间三个半字节共12位。对于这12位,俩数加和的可能值有0 - (2^12 - 1),因此总共有2^12中可能性,即可以最多有4K个段:偏移对应一个线性地址。
 
 
 
2.对于FFFFH:FFFFH的地址怎么表示?
 
 
由于8086仅仅有20位地址总线,当段偏移达到最大时,20位的地址线已不能表示(10FFEFH).这时系统不会出错,只是会回卷回去,重新寻址。但是到286的时候,已经可以寻址1MB以上的地址,为了保持向下兼容,IBM使用8042键盘控制器控制第二十位。默认情况下是处于关闭状态,可以通过92h端口进行操作。
 
IN AL, 92H
AND AL, 1
OUT 92H, AL
对于端口的操作只能通过IN和UOT指令。
 
 
 
3.段偏移模式适用于什么模式。
 
一般情况下,操作系统会有三种基本模式:实地址模式,保护模式和系统管理模式,还有一个保护模式的特例,虚拟8086模式。段偏移模式仅适用于实地址模式,而且寻址有限,只有1MB.
阅读(2261) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~