【计算机基础Ep13】王爽《汇编语言(第三版)》知识点梳理(一)
第一章 基础知识
引导:
地位:汇编语言是直接在硬件之上工作的编程语言;
课程范围:不对硬件系统进行全面和深入的研究——
《微机原理与接口》:PC机及CPU的物理结构和编程结构的研究(即我们使用的黑皮书大概内容);
《组成原理》:计算机一般的结构、功能、性能的研究(即唐朔飞教材的大概内容)。
1.1机器语言
机器语言:
定义:机器指令的集合;
性质:一列二进制数字。
计算机:
定义:
早期:可以执行机器指令,进行运算的机器;
现在:(有一个芯片完成上面所说的计算机的功能,这个芯片就是CPU)计算机指的是由CPU和其他受CPU直接或间接控制的芯片、器件、设备组成的计算机系统,比如我们常见的PC机器;
CPU(Central Processing Unit,中央处理单元):一种微处理器;
微处理器:由于硬件设计和内部结构的不同,就需要不同的电平脉冲来控制,使它工作;所以每一种微处理器都有自己的机器指令集,也就是机器语言。
机器语言:
作用:早期的程序设计均使用机器语言;
历史:程序员将用0、1数字编成的程序代码打在纸带或卡片上,1打孔,0不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算;
展示:应用8086CPU完成运算s=768+12288-1280的机器码
101110000000000000000011
000001010000000000110000
001011010000000000000101;
结论:晦涩难懂,不易差错。
1.2汇编语言的产生
汇编语言:
主体:汇编指令;
与机器语言的差别:指令的表示方法,汇编指令是机器指令便于记忆的书写格式;
例子:机器指令1000100111011000表示把寄存器BX的内容送到AX中,汇编指令则写成mov ax,bx,与人类语言接近,便于阅读和记忆;
寄存器:CPU中可以存储数据的器件,一个CPU有多个寄存器;
问题:计算机能读懂的只有机器指令,那么如何让计算机执行程序员用汇编指令编写的程序呢?——编译器;
编译器:能够将汇编指令转换成机器指令的翻译程序;
工作过程:程序员用汇编语言写出源程序,再用汇编编译器将其编译为机器码,由计算机最终执行。
1.3汇编语言的组成
3类指令:
汇编指令:机器码的助记符,有对应的机器码——汇编语言的核心:决定了汇编语言的特性;
伪指令:没有对应的机器码,由编译器执行,计算机并不执行;
其他符号:如+、-、*、/等,由编译器识别,没有对应的机器码。
1.4存储器
存储器:
功能:指令和数据在存储器存放,也就是我们平时所说的内存;
重要性:在一台PC机中内存的作用仅次于CPU——磁盘不同于内存,磁盘上的数据或程序如果不读到内存中,就无法被CPU使用。
1.5指令和数据
指令和数据:
区别:应用上的概念,CPU在工作的时候把有的信息看作指令,有的信息看作数据,为同样的信息赋予了不同的意义;
联系:在内存和磁盘上,指令和数据没有任何区别;
例子:二进制信息1000100111011000,看作数据是89D8H,看作指令是mov ax,bx。
1.6存储单元
存储单元:
编号:存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号,例如一个存储器有128个存储单元,编号从0~127;
存储量:微型存储器的存储单元可以存储一个Byte,即8bit(一个bit是一个二进制位,音译为比特),一个存储器有128个存储单元,它可以存储128个Byte;
计量:微机存储器是以字节为最小单位来计算的;
容量:对于拥有128个存储单元的存储器,我们可以说,它的容量是128个字节;
大容量存储器单位:1KB=1024B,1MB=1024KB,1GB=1024MB,1TB=1024GB;
磁盘的容量单位同内存。
1.7CPU对存储器的读写
CPU要想进行数据的读写,必须和外部器件(标准的说法是芯片)进行下面3类信息的交互——
存储单元的地址(地址信息);
器件的选择,读或写的命令(控制信息);
读或写的数据(数据信息)。
总线:
定义:从物理上来讲,就是一根根导线的集合;
作用:连接CPU和其他芯片的导线;
原理:电子计算机能处理、传输的信息都是电信号,电信号当然用导线传送;
分类:
地址总线;
控制总线;
数据总线。
读取数据的过程——
CPU通过地址线将地址信息发出;
CPU通过控制线发出内存读命令,选中存储器芯片,并通知它,将要从中读取数据;
存储器通过数据线将存储单元中数据送入CPU。
写入数据的过程——
CPU通过地址线将地址信息发出;
CPU通过控制线发出内存写命令,选中存储器芯片,并通知它,要向其中写入数据;
CPU通过数据线将数据送入存储单元中。