1.通用寄存器:
8086CPU的所有寄存器都是16位, 可以存储2个字节. AX, BX, CX, DX 四个寄存器通常用来存放一般性的数据, 被称为通用寄存器.
8086CPU的上一代CPU中的寄存器都是8位的,为了保证兼容,8086CPU的 AX, BX, CX, DX 都可分为2个独立是使用的8位寄存器.
- AX --> AH & AL;
- BX --> BH & BL;
- CX --> CH & CL;
- DX --> DH & DL;
- ps: (H - High 高位, L - Low 低位)
2.16位结构的CPU, 有以下几方面的结构特性:
- 运算器一次最多可以处理16位的数据;
- 寄存器的最大宽度位16位;
- 寄存器和运算器之间的通路为16位;
3.8086CPU有20位地址总线, 可以传送20位地址,达到1MB的寻址能力, 8086又是16位结构, 在内部一次性处理, 传输, 暂时存储的地址为16位. 从8086CPU的内部结构来看, 如果将地址从内部简单地发出,那么它只能送出16位地址,表现出的寻址能力只有64KB.
8086CPU采用了一种在内部用两个16位地址合成的方法形成一个20位的物理地址.
- CPU中的相关不见提供2个16位的地址, 一个称为段地址, 一个称为偏移地址;
- 段地址和偏移地址通过内部总线送入一个称为地址加法器的部件;
- 地址加法器将这2个16位地址合成位一个20位的物理地址;
- 地址加法器通过内部总线将20位物理地址送入输入输出控制电路;
- 输入输出控制电路将20位物理地址送上地址总线;
- 20位物理地址被地址总线传送到存储器.
地址加法器采用 物理地址 = 段地址 * 16 + 偏移地址 的方法用段地址和偏移地址合成物理地址.
ps: 以二进制形式存放的段地址左移4位, 完成段地址 * 16的运算.
分享到:
相关推荐
it has been written in assembly. The code has been written in-line (without subroutines) to maximize switching performance of the application. The code uses only 43 locations of program memory (512 ...
完整的 dsp2802芯片资料 包括 Contents 1 Architectural Overview . . . . . . . ....1.1 Introduction to the CPU ....1.1.1 Compatibility With Other TMS320 CPUs ....1.1.2 Switching to C28x Mode From Reset ....
Introduction to 80x86 Assembly Language and Computer Architecture Installation Instructions 1. Insert the Introduction to 80x86 Assembly Language and Computer Architecture CD into the CD-ROM drive. ...
of the C# language as a whole, the pillars of object oriented programming (OOP), assembly configuration, database access (through ADO.NET), as well as the process of building desktop GUI applications,...
PROCESSOR <br>/* you implement MULSHIFT32() and so forth */ <br>#else #error Unsupported platform in assembly.h #endif <br>Optionally you can rewrite or add assembly language files ...
skein_block_x64.asm This is the 64-bit assembly language version of skein_block.c. It may be used to replace that file in the Optimized_64bit directory to improve performance on 64-bit Intel/AMD ...
of the C# language as a whole, the pillars of object oriented programming (OOP), assembly configuration, database access (through ADO.NET), as well as the process of building desktop GUI applications,...
of the C# language as a whole, the pillars of object oriented programming (OOP), assembly configuration, database access (through ADO.NET), as well as the process of building desktop GUI ...
- **汇编语言(Assembly Language)**:直接操作计算机硬件的低级语言,与特定的处理器架构紧密相关。 - **程序设计语言的发展**:经历了从机器语言、汇编语言到高级语言的演变过程,但并未经历“脚本语言”这一阶段,...
UAL stands for: Universal Assembly Language. pre-UAL syntax is selected with the directive CODE16. UAL syntax is selected with the directive THUMB. pre-UAL syntax does not specify the "s" (flag ...
A Note about In-Kernel Debuggers 313 Summary 313 Chapter 11: The GNOME Developer Platform 315 GNOME Libraries 316 Glib 316 GObject 316 Cairo 316 GDK 317 Pango 317 GTK+ 317 libglade 318 GConf 318 ...
A Note about Debugging 637 Drawing Scrollable Windows 638 World, Page, and Device Coordinates 644 Colors 645 Red-Green-Blue (RGB) Values 645 The Named Colors 646 Graphics Display Modes and the Safety ...