主板上的CPU 周围有很多线
通向内存 通向PCI 通向南桥 叫总线
CPU->内存 的线叫地址总线,通过地址总线找到程序在内存中的具体位置
数据总线 把内存中的内容传送给CPU
控制总线 CPU控制外维设备(硬盘、光驱等)
每根总线可以传送0和1 (高低电平)
8086CPU对内存的寻址最大范围是2^20次 = 1MB
每次传送10位
CPU通过地址总线传送地址给内存控制器,内存控制器把对应地址的内容 通过数据总线传给CPU
CPU通过控制总线告诉内存控制器,是进行读操作还是写操作
--------CPU寻址能力:------------------
总线的宽度(CPU有多少根线连接到内存当中):
地址总线的条数决定CPU的寻址 (2^20)
CPU是多少位的就可以决定CPU的寻址
32位CPU 2^32次方 = 4GB
CPU执行:
CPU先把指令或数据放到寄存器
寄存器分为"通用寄存器"和"段寄存器"
1个双字 = 2个字 = 4个字节 = 32位
一个双字(16位,1个字)
00000000 00000000
高8位AH 低8位AL
AX:专门存放数据的仓库
CPU内部由哪些部件构成:寄存器、运算器、控制器、内部总线
***实际地址的计算 :***********************
8086主板地址线20根要进行寻址必须一次传20位二进制
但CPU最大一次只能传16个二进制数
(例:两张纸条 每张只能写三位数,要求这两张来表示一个四位)
常规:234+23 = ???
解决:234*10 + 23 = 四位数
地址加法器来进行转换
基地址:偏移地址 = 实际地址
***实际地址 = 基地址*16 + 偏移地址
例:1420:100
实际内存地址=
=1420H * 16 + 100H
=1420H * 10H + 100H
=14200H + 100H
=14300
---------------------------
内存分段:
10000H-1007FH
10080H-100FFH