Chapter 14 80386 Real-Address Mode

我现在不明白的一个问题就是 什么是系统硬件做的 什么是系统软件做的。

Chapter 14 80386 Real-Address Mode
────────────────────────────────────────────────────────────────────────────
The real-address mode of the 80386 executes object code designed for
execution on 8086, 8088, 80186, or 80188 processors, or for execution in the
real-address mode of an 80286:

386实模式执行8086 8088,80186 的机器码。
In effect, the architecture of the 80386 in this mode is almost identical
to that of the 8086, 8088, 80186, and 80188. To a programmer, an 80386 in
real-address mode appears as a high-speed 8086 with extensions to the
instruction set and registers. The principal features of this architecture
are defined in Chapters 2 and 3.

事实上 386和他以前的处理器在实模式下基本上是一直的。对于一个程序员 386的实模式

相当于高速的8086 基本的结构特性在2 3章定义。
This chapter discusses certain additional topics that complete the system
programmer's view of the 80386 in real-address mode:

这章讨论额外的东西。
● Address formation.
● Extensions to registers and instructions.
● Interrupt and exception handling.
● Entering and leaving real-address mode.
● Real-address-mode exceptions.
● Differences from 8086.
● Differences from 80286 real-address mode.

地址的形成

寄存器的扩展

中断和异常

进入和离开实模式

实模式异常


14.1 Physical Address Formation
The 80386 provides a one Mbyte + 64 Kbyte memory space for an 8086 program.
Segment relocation is performed as in the 8086: the 16-bit value in a
segment selector is shifted left by four bits to form the base address of a
segment. The effective address is extended with four high order zeros and
added to the base to form a linear address as Figure 14-1 illustrates. (The
linear address is equivalent to the physical address, because paging is not
used in real-address mode.) Unlike the 8086, the resulting linear address
may have up to 21 significant bits. There is a possibility of a carry when
the base address is added to the effective address. On the 8086, the carried
bit is truncated, whereas on the 80386 the carried bit is stored in bit
position 20 of the linear address.

物理地址的形成

386为一个程序提供1m+64K字节的内存空间,段重置被执行在8086中,在一个选择子中的

16位的值向左移4位形成一个段的基地址。(在实模式下分页机制没有使用,线性地址相当于物理地址)

不像8086,线性地址可能会有21位有意义位 就是说在基地址运算成为有效地址的时候有可能

产生进位。
Unlike the 8086 and 80286, 32-bit effective addresses can be generated (via
the address-size prefix); however, the value of a 32-bit address may not
exceed 65535 without causing an exception. For full compatibility with 80286
real-address mode, pseudo-protection faults (interrupt 12 or 13 with no
error code) occur if an effective address is generated outside the range 0
through 65535.

 

14.2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值