1.1 机器语言
汇编语言诞生之前,处理器处理以二进制数字组成的编码(0和1),这样的编码就称作为机器语言,也是一系列机器指令的集合;比如8086CPU完成运算s=768+12288-1280,机器码如下:
101100000000000000000011
000001010000000000110000
001011010000000000000101
冗长的数字给汇编语言的表示和查错带来了极大的不便,当时,我们的程序员为了突破这一难题,发明了一种更简便的表示方法来进行人与计算机之间的交流,就是汇编语言;
1.2汇编语言的产生
汇编语言的主题是汇编指令,汇编指令和机器指令的差别在于指令的表示方法上,例如机器指令1000100111011000表示把寄存器BX的内容送到AX中,而用汇编指令则可以用mov ax,bx来进行表示;(寄存器,就是CPU中可以存储数据的器件,一个CPU有多个寄存器)、
汇编语言有3类指令:
1.汇编指令:机器码的助记符,有对应的机器码,
2.伪指令:没有对应的机器码,编译器执行,计算机不执行;
3.其它符号:如+,-,*,/等,由编译器识别,没有对应的机器码;
1.3存储器,指令和数据
存储器:就是内存,用来存入信息,指令,数据;
指令和数据是应用上的概念,当指令和数据在内存或磁盘上时,没有任何区别,都是二进制信息,而在CPU工作时,有的信息就被赋予了不同的作用,有的是指令,有的是数据,就向是1.2中的机器指令1000100111011000,可以当成89D8H的数据来处理,在一些情况又可以成为mov ax,bx的指令。
1.6存储单元
存储器的最小单位,一个存储器有128个单位,从0开始编号,一直到127,那么一个存储单元可以存储多少的信息呢? 计算机的最小信息单位是bit(比特),8个bit=1个byte(字节),那么一个存储单元可以存储1个byte,一个存储器有128个存储单元,就是说一个存储器可以存储128个byte;
1.7CPU对存储器的读写
CPU确定要读取的数据,可以根据需要读取数据的地址从内存中读数据,对数据进行操作,
而不管CPU是读入数据,还是写入数据,必须和外部器件(芯片)进行下面3类信息的交互:
存储单元的地址(地址信息)
器件的选择(控制信息)
读或写的数据(数据信息)
操作过程如下:
1.CPU通过地址线将要读/写数据的地址信息发出
2.CPU通过控制线发出内存读/写命令,选中存储器芯片,通知它将要从中读/写数据
3.存储器将该地址的数据通过数据线与CPU进行交互