编译原理学习笔记(第一章 基础知识)

第一章 基础知识

1.1、机器语言

01串

1.2、汇编语言的产生

一个有用的程序至少要有几十行机器码,使得汇编语言应运而生。

汇编语言的写法与人类的语言更相近,便于阅读与记忆

但是,机器能读懂的只有机器指令,这时候就需要一个能将汇编指令翻译成机器语言的翻译程序,这样的程序叫做编译器

1.3、汇编语言的组成

(1)汇编指令:机器码的助记符,有对应的机器码。

(2)伪指令:没有对应的机器码,由编译器执行,计算机不执行。

(3)其他符号:如+、-、*、/等,由编译器识别。没有对应的机器码。

其中,汇编指令是汇编语言的核心,它决定了汇编语言的特性。

1.4、储存器

计算机的硬件基础:CPU。

想让一个CPU工作,就必须向其提供指令和数据

指令和数据在存储器中存放,存储器就是我们平时说的内存

要灵活地利用汇编语言编程,首先要了解CPU是如何从内存中读写信息的

1.5、指令与数据

指令和数据是应用上的概念。

在内存上,指令与数据没有任何差别,都是二进制信息

1.6、储存单元

存储器被划分成若干个存储单元,每个存储单元从0开始编号。

电子计算机上,一个存储单元可以储存1个字节(Byte)即8个二进制位(bit)的信息

1.7、CPU对存储器的读写

CPU要想进行数据的读写,必须要和外部器件进行下面三类信息的交互:

​ 储存单元的地址(地址信息);

​ 芯片的选择 ,读或写的命令(控制信息);

​ 读或写的数据(数据信息);

为了传递信息,计算机中有专门连接CPU与其他芯片的导线,通常称为总线

总线从逻辑上又分为三类:地址总线、控制总线和数据总线

CPU从存储单元x中读取数据的过程如下:
(1)CPU通过地址线将地址信息x发出。

(2)CPU通过控制线发出内存读命令,选中储存器芯片,并通知它,将要从中读取数据。

(3)存储器将x号单元中的数据通过数据线送入CPU。

1.8、地址总线

CPU通过地址总线来指定存储器单元,地址总线上能传送的信息数量就是CPU的寻址范围。

一个CPU有N根地址总线(宽度为N),CPU最多可以寻找2的N次方个内存单元。

1.9、数据总线

地址总线的宽度决定了CPU与外界的数据传输速度。

8根数据总线一次可传输一个字节的数据。

1.10、控制总线

在这里控制总线是个总称,控制总线是一些不同的控制线的集合

1.11、内存地址空间

CPU的寻址范围构成这个CPU的内存地址空间

1.12、主板

主板上有核心器件与一些主要器件,这些器件通过地址、数据、控制总线相连。

1.13、接口卡

CPU对外部设备都不能直接控制,直接控制这些外部设备工作的是插在拓展插槽上的接口卡

拓展插槽通过总线与CPU相连,所以接口卡也通过总线与CPU相连。

CPU通过总线向接口卡发送命令进而控制外设工作

1.14、各类储存器芯片

PC机中装有多个存储器芯片,从物理连接上看是独立的器件。

从读写属性上看分为两类:

随机储存器(RAM):可读可写,但必须带电存储,关机后储存内容丢失。

只读存储器(ROM):只读不写,关机后内容不丢失。

从功能与连接方式上又分为以下几类:

随机储存器:用于储存CPU使用的绝大部分程序和数据,主随机储存器上一般由两个位置上的RAM组成,分别为装在主板上的RAM和插在拓展插槽上的RAM。

​ **装有BIOS(Basic Input/Output System)的ROM:BIOS是由主板和各类接口卡(显卡、网卡)厂商提供的软件系统,可以通过它利用该硬件设备进行最基本的输入输出。**在主板和某些接口卡上插有储存相应BIOS的ROM。

​ **接口卡上 的RAM:**某些接口卡需要对大批量输入、输出进行暂时储存,在其上装有RAM。最典型的是显卡上的显存

1.15、内存地址空间

上述的那些储存器,在物理上虽然是独立的器件,但是在下面两点上相同:
都与CPU的总线相连

CPU对它们进行读或写的时候都通过控制线发出内存读写命令

就是说,在CPU的眼里,众存储器平等,把它们总的看作一个有若干储存单元组成的逻辑存储器。这个逻辑储存器就是我们所说的内存地址空间

内存地址空间的大小受CPU地址总线宽度的限制。

你可能感兴趣的:(学习笔记,编译器)