速通x86(一)

根据王爽所编写的汇编语言进行复习和总结

0x00 产生

早期电脑使用机器语言(如1000100111011000 -> mov ax,bx),但是不方便阅读且记忆,所以开发了汇编语言的编译器,将汇编语言转为机器码.

0b0000 分类

发展至今有三类指令

  1. 汇编指令:机器码的助记符,有对应的机器码
  2. 伪指令:无对应机器码,由编译器处理
  3. 其他符号:+,-,*,// 也由编译器处理

0b0001 数据与指令

二者是应用上的概念,对于"1000100111011000"来讲,可以把他当作数据来处理,也可以视为指令 "mov ax,bx"

0b0010 总线

汇编语言实现数据的读取与修改需要确定:

  1. 地址
  2. 读or写
  3. 数据

而CPU通过总线与其他内存进行交互,可以分为三类:

  1. 地址总线
  2. 控制总线
  3. 数据总线

在8088CPU中,地址总线的宽度为8为,每次可以传输1Byte的数据,在8086CPU中,地址总线的宽度为16,每次可以传输2Byte的数据

控制总线的宽度决定了CPU的控制能力

0b0011 内存

内存从读写属性上可以分为RAM(随机存储器)与ROM(只读存储器),前者可读可写,断电后消失,后者只可读,断电后不丢失

根据功能和链接又可以分为:

  1. 随机存储器:如主板上的RAM以及拓展槽上的RAM
  2. 装有BIOS的ROM:如主板上的ROM,存储的厂商提供的系统BIOS
  3. 接口卡上的RAM:如显卡上的RAM,一般将其称为显存

0b0100 内存地址

无论是什么存储器,对于CPU来讲都属于内存,把这些存储器整合为逻辑存储器(即内存地址空间),在逻辑存储器中,每个内存都被视为一段地址空间.

posted @ 2024-09-16 15:14  Cia1lo  阅读(6)  评论(0编辑  收藏  举报