基础知识

目录

  • 基础知识
  • 机器语言
  • 汇编语言
  • 汇编语言的组成
  • 存储器
  • 指令和数据
  • 存储单元
  • CPU对存储器的读写
  • 地址总线
  • 数据总线
  • 控制总线
  • 内存地址空间
  • 主板
  • 接口卡
  • 各类存储器芯片

机器语言

机器语言是机器指令的集合

机器语言就是一台机器可以正确执行的命令

指令:01010000(PUSH AX)

汇编语言

  • 机器指令:1000100111011000
  • 操作:寄存器BX的内容送到AX中
  • 汇编指令:MOV AX,BX
  • 这样的写法便于阅读和记忆

汇编语言的组成

  • 汇编语言由以下3类组成
  • 汇编指令(机器码的助记符)
  • 伪指令(由编译器执行)
  • 其他符号(由编译器执行)
  • 汇编语言的核心是汇编指令,它决定了汇编语言的特性

存储器

  • CPU是计算机的核心部件,它控制整个计算机的运行并进行运算,要想让CPU运作,必须向它提供指令和数据
  • 指令和数据在存储器中存放,也就是平时说的内存
  • 在一台PC中内存的作用仅次于CPU
  • 磁盘不同于内存,磁盘上的数据或程序如果不读到内存中就不能被CPU使用

指令和数据

  • 指令和数据是应用上的概念
  • 在内存或磁盘中,指令和数据没有任何区别,都是二进制信息
  • 1000100111011000 -> 35288 -> 89D8H(数据)
    1000100111011000 -> MOV AX,BX(指令)

存储单元

  • 存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号
  • 容量单位:
  • 1KB = 1024B
  • 1MB = 1024KB
  • 1GB = 1024MB
  • 1TB = 1024GB

CPU对存储器的读写

  • CPU想要进行数据的读写,必须和外部器件(芯片)进行三类信息的交互:
  • 存储单元的地址(地址信息)
  • 器件的选择,读或写命令(控制信息)
  • 读或写的数据(数据信息)
  • 在计算机中有专门连接CPU和其他芯片的导线,通常称为总线
  • 物理上:一根根导线的集合
  • 逻辑上划分为:
  • 地址总线
  • 数据总线
  • 控制总线
  • 对于8086CPU,下面的机器码能够完成从3号单元读数据
  • 机器码:101000000000001100000000
  • 含义:从3号单元读取数据送入寄存器AX

地址总线

  • CPU是通过地址总线来指定存储单元的
  • 地址总线上能传送多少不同的信息,CPU就可以对多少个存储单元进行寻址
  • 地址总线的数量就是电脑的位数(32位,64位)
  • 要达到64位的速度,你要有
  1. 64位的CPU
  2. 64位的操作系统
  3. 64位的软件

汇编指令 LDA_汇编指令 LDA

  • 一个CPU有N根地址总线,则可以说这个CPU的地址总线的宽度为N
  • 这样的CPU最多可以寻找2的N次方个内存单元

数据总线

  • CPU与内存或其他器件之间的数据传送是通过数据总线进行的
  • 数据总线的宽度决定了CPU和外界的数据传送速度

控制总线

  • CPU对外部器件的控制是通过控制总线来进行的。在这里控制总线是个总称,控制总线是一些不同控制线的集合
  • 有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制

内存地址空间

  • 一个CPU的地址线宽度为10,那么可以寻址1024个内存单元,这1024个可寻到的内存单元就构成这个CPU的内存地址空间

主板

  • 在每一台PC机中,都有一个主板,主板上有核心器件和一些主要器件
  • 这些器件通过总线相连

接口卡

  • 计算机系统中,所有可用程序控制其运作的设备,必须受到CPU的控制
  • CPU对外部设备不能直接控制,如显示器、音响等。直接控制这些设备进行运作的是插在拓展插槽上的接口卡

各类存储器芯片

  • 从读写属性上看分为两类:
  • 随机存储器(RAM)
  • 只读存储器(ROM)
  • 从功能和连接上分类:
  • 随机存储器RAM
  • 装有BIOS的ROM
  • 接口卡上的RAM

汇编指令 LDA_地址总线_02

  • 上述存储器在物理上是独立的,但它们在以下两点上相同:
  • 都和CPU的总线相连
  • CPU对它们进行读和写的时候都通过控制线发出内存读写命令
  • 将各类存储器看作一个逻辑存储器:
  • 所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器
  • 每个物理存储器在这个逻辑储存器中占有一个地址段,即一段地址空间
  • CPU在这段地址空间中读写数据,实际上就是在相对应的物理存储器中读写数据

汇编指令 LDA_汇编语言_03

  • 不同计算机系统的内存地址空间分配情况是不同的
  • 内存地址空间:
  • 最终运行程序的是CPU,编程的时候,必须要从CPU角度考虑问题