王爽「汇编语言」学习笔记(一)

Study Notes Assembly

简单认识汇编语言

机器语言:机器指令的集合。

由于硬件设计和内部结构不同,每一种微处理器都有自己的机器语言。

汇编语言的主体是汇编指令,汇编指令与机器指令的差别在于指令的表示方法。

因为计算机只能读懂机器指令,所以需要使用编译器将汇编指令转换成机器指令的。

汇编语言的组成:

  1. 汇编指令(有对应的机器码)
  2. 伪指令(没有对应的机器码,由编译器执行,计算机不执行)
  3. 其他符号(没有对应的机器码,由编译器识别)

硬件知识基础

存储器

存储器即内存,存放 CPU 可以直接使用的信息,包括指令和数据。

指令和数据

二者在内存或磁盘上没有区别,都是二进制信息,但是在 CPU 进行工作时会将一部分信息看做指令,一部分看做数据。

存储单元

存储器被划分为若干个存储单元,每个存储单元从 0 开始编号,单个存储单元可以存储 1 Byte 的信息。

CPU 对存储器的读写

CPU 进行对数据的读写需要与存储器芯片进行 3 种信息的交互:

  1. 存储单元的地址(地址信息)
  2. 器件的选择,读/写的命令(控制信息)
  3. 读/写的数据(数据信息)

总线

CPU 通过总线向存储器芯片传输信息,总线在逻辑上分为 3 类:地址总线、控制总线、数据总线。

地址总线

地址总线的宽度决定了 CPU 的寻址能力。

一个 CPU 具有 N 根地址总线,就说它的地址总线宽度为 N ,这样的 CPU 可以对 2N2^N 个内存单元进行寻址。

数据总线

数据总线的宽度决定了 CPU 与其他器件进行数据传送时的一次数据传送量。

控制总线

有多少根控制总线,就意味着 CPU 提供了对外部器件的多少种控制。

控制总线的宽度决定了 CPU 对外部器件的控制能力。

内存地址空间(概述)

主板:主板上有核心器件和一些主要器件,如 CPU 、存储器、外围芯片组、扩展插槽等,他们之间通过总线相连。

接口卡:计算机上直接控制外部设备进行工作的是位于扩展插槽上的接口卡。CPU 直接控制接口卡,通过接口卡实现对外部设备的间接控制。

各类存储器芯片

存储器芯片从读写属性上分为两类:

  1. RAM:可读可写,必须带电存储,关机后存储内容丢失
  2. ROM:只可读取不可写入,关机后内容不丢失

这些存储器从功能和连接上又可分为 3 类:

  1. 随机存储器
    存放供 CPU 使用的绝大部分程序和数据,主随机存储器一般由主板上的 RAM 和插在扩展插槽上的 RAM 组成
  2. 装有 BIOS 的 ROM
  3. 接口卡上的 RAM
    如显卡上的显存

内存地址空间

CPU 在控制上述存储器时,都将他们当做内存来对待,把他们看做一个由若干存储单元组成的逻辑存储器,即内存地址空间。

内存地址空间大小受 CPU 地址总线宽度的限制,不同的计算机系统的内存地址空间的分配情况不同。

Author: f1a3h

Permalink: https://blog.rbkou.me/Study-Notes/Assembly/asm1/

文章默认使用 CC BY-NC-SA 4.0 协议进行许可,使用时请注意遵守协议。

Comments