CPU对存储器的读写
- 存储单元的地址(地址信息)【通过地址总线】
- 器件的选择,读或写命令 (控制信息)【通过控制总线】
- 读或写的数据 (数据信息)【通过数据总线】
内存并不是一定指的是计算器的内存条的内存,显示器等硬件设备中也存在内存
RAM和ROM
- RAM 随机可读写
- ROM 只读,一般存在各个硬件的BIOS程序
寄存器
- AX、BX、CX、DX 通用寄存器,每个寄存器都都16位的
- AX 可以拆分成AH和AL两个8位的寄存器,用来兼容低版本
16位结构cpu
- 运算器一次最多可以处理16位的数据
- 通用寄存器的最大宽度位16位
- 寄存器和运算器之间的通路是16位
与64位cpu的特点是相通的
CPU位数和线路位宽的区别
- CPU位宽是指一次可以计算数据的bit数。有CPU在计算时,数据需要先保存在寄存器中,因此CPU位宽一般就是指寄存器的位数。如32CPU一次可以计算32bit的数据,64位CPU一次可以计算64bit的数据。
- 操作系统位宽一般就是值线路位宽。程序在执行时,需要通过地址总线去内存中找到对应数据或指令的地址。线路位宽就是指地址总线有多少根。程序在运行的时候,需要先加载到内存中,然后CPU根据地址总线去读取内存中的指令或数据。内存中的地址已byte进行编号,比如第一个byte编号为0x01,第二个地址编号为0x02 。。。如果是32为地址总线,那么可以得到一个32位的二进制数据,范围为 0 ~ 2^32, 因此32位操作操作系统(32位线宽)可以寻址的地址范围为4GB (每个地址都对应1Byte的内存)。
物理地址计算
段地址 * 16 + 偏移地址
也可以描述成段地址左移4位加上偏移地址
内存地址描述
段地址是 2000H 偏移地址是 1F60
- 描述1 数据存在内存 2000:1F60单元中
- 描述2 数据存在内存的2000段中的1F60H单元中