《汇编语言(第3版)(王爽 著)》学习笔记一:基础知识(1)

版权声明:该文章由作者原创,未经许可请勿转载! https://blog.csdn.net/qq_29381145/article/details/82928441
  • 汇编语言是直接在硬件之上工作的编程语言,我们首先要了解硬件系统的结构,才能有效地应用汇编语言对其编程。
  • 汇编课程的研究重点放在如何利用硬件系统的编程结构和指令集有效灵活地控制系统进行工作。

1.1 机器语言


  1. 机器语言是机器指令的集合。机器指令展开来讲就是一台机器可以正确执行的命令。电子计算机的机器指令是一列二进制数字。计算机将之转变为一列高低电平,以使计算机的电子器件受到驱动,进行运算。
  2. 上面所说的计算机指的是可以执行机器指令,进行运算的机器。这是早期计算机的概念。现在,在我们常用的 PC 机中,有一个芯片来完成上面所说的计算机的功能。这个芯片就是我们常说的 CPUCentral Processing Unit,中央处理单元),CPU 是一种微处理器。以后我们提到的计算机是指由 CPU 和其他受 CPU 直接或间接控制的芯片、器件、设备组成的计算机系统,比如我们最常见的 PC 机。
  3. 每一种微处理器,由于硬件设计和内部结构的不同,就需要用不同的电平脉冲来控制,使它工作。所以每一种微处理器都有自己的机器指令集,也就是机器语言。
  4. 早期的程序设计均使用机器语言。程序员们将用 0、1 数字编成的程序代码打在纸带或卡片上,1 打孔,0 不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算。
  5. 书写和阅读机器码程序不是一件简单的工作,要记住所有抽象的二进制码。这些机器码不仅晦涩难懂,而且不易查错。

1.2 汇编语言的产生


  1. 早期的程序员们很快就发现了使用机器语言带来的麻烦,它是如此难于辨别和记忆,给整个产业的发展带来了障碍。于是汇编语言产生了。汇编语言的主体是汇编指令。汇编指令和机器指令的差别在于指令的表示方法上。汇编指令是机器指令便于记忆的书写格式。
  2. 寄存器,简单地讲是 CPU 中可以存储数据的器件,一个 CPU 中有多个寄存器。AX 是其中一个寄存器的代号,而 BX 是另一个寄存器的代号。
  3. 计算机能读懂的只有机器指令,那么如何让计算机执行程序员用汇编指令编写的程序呢?这时,就需要有一个能够将汇编指令转换成机器指令的翻译程序,这样的程序我们称其为编译器。程序员用汇编语言写出源程序,再用汇编编译器将其编译为机器码,由计算机最终执行:
    图 1.1 用汇编语言编写程序的工作过程

1.3 汇编语言的组成


  • 汇编语言发展至今,由以下三类指令组成:
  1. 汇编指令:机器码的助记符,有对应的机器码。
  2. 伪指令:没有对应的机器码,由编译器执行,计算机并不执行。
  3. 其他符号:如 +-*/ 等,由编译器识别,没有对应的机器码。
  • 汇编语言的核心是汇编指令,它决定了汇编语言的特性。

1.4 存储器


  1. CPU 是计算机的核心部件,它控制着整个计算机的运作并进行运算。
  2. 要想让一个 CPU 工作,就必须向它提供指令和数据。指令和数据在存储器中存放,也就是我们平时所说的内存。在一台 PC 机中内存的作用仅次于 CPU。离开了内存,性能再好的 CPU 也无法工作。
  3. 磁盘不同于内存,磁盘上的数据或程序如果不读到内存中,就无法被 CPU 使用。
  4. 要灵活地利用汇编语言编程,我们首先要了解 CPU 是如何从内存中读取信息,以及向内存中写入信息的。

1.5 指令和数据


  1. 指令和数据是应用上的概念。在内存或磁盘上,指令和数据没有任何区别,都是二进制信息。CPU 在工作的时候把有的信息看作指令,有的信息看作数据,为同样的信息赋予了不同的意义。例如,内存中的二进制信息 1000 1001 1101 1000,计算机可以把它看作大小为 89D8H 的数据来处理,也可以将其看作指令 mov ax,bx 来执行。

1.6 存储单元


  1. 存储器被划分成若干个存储单元,每个存储单元从 0 开始顺序编号。例如一个存储器有 128 个存储单元,则编号为 0 ~ 127。
  2. 电子计算机的最小信息单位是 bit(音译为比特),也就是一个二进制位。8 个 bit 组成一个 Byte,也就是通常讲的一个字节。微型机存储器的存储单元可以存储一个 Byte,即 8 个二进制位。一个存储器有 128 个存储单元,那么它可以存储 128 个 Byte。
  3. 微机存储器的容量是以字节为最小单位来计算的。对于一个拥有 128 个存储单元的存储器,我们可以说,它的容量是 128 个字节。
  4. 对于大容量的存储器一般还用以下单位来计算容量(以下用 B 来代表 Byte):1KB = 1024B;1MB = 1024KB;1GB = 1024MB;1TB = 1024GB。
  5. 磁盘的容量单位同内存的一样,实际上以上单位是微机中常用的计量单位。

猜你喜欢

转载自blog.csdn.net/qq_29381145/article/details/82928441