h1汇编语言的产生以及相关基础知识

1. 学习汇编

 目的:充分获得底层编程的体验;深刻理解机器运程序的机理。
② 对象:以8086 CPU 为中央处理器的PC机来进行学习。(注意:编程的平台是 硬件 而非 操作 系统,在一个没有操作系统的环境中直接对硬件进行编程。)

2. 历史

 机器语言:机器指令的集合,是一系列二进制的数,计算机将之改变为高低电平,以使电子器件受到驱动,进行运算。不同的微处理器,由于硬件设计和内部结构不同,需要用不同的电平脉冲来控制。

早期程序员将0,1数字编成的程序代码打在纸带或卡带上(1打孔,0不打孔),程序通过纸带机或卡片机输入到计算机。(额,老古董了,哈哈)。

② 汇编语言的产生:机器码所带来的麻烦(难于辨别记忆),阻碍了整个产业的发展。因此汇编语言诞生了。汇编语言的主体是汇编指令,汇编指令是机器指令便于记忆的书写格式。

操作:寄存器BX的内容送到AX
机器指令:1000100111011000
汇编指令:mov ax, bx

图片[1]-h1汇编语言的产生以及相关基础知识-Drton1博客

③ 汇编语言组成:
汇编指令:机器码的助记符,有对应的机器码。
伪指令:没有对应的机器码,由编译器执行,计算机不执行
其他符号:没有对应的机器码,由编译器识别,如 +、-、*、/ 等。

3. 基础知识

①储存器(内存): 储存器就是我们熟知的内存,cpu相当于人的大脑,而储存器相当于人的记忆,如果一个人只有大脑没有记忆,那是没有办法进行思考的,所以cpu运行时,先从内存中读取信息,然后进行运算

②储存单元:储存器中有很多储存单元,每个储存单元都有自己的编号,如一个储存器中有128个储存单元

那么这些储存单元的编号就是从0-127,一个储存单元可以储存1Byte也叫一字节(也就是八个二进制bit),那么一个储存器就能储存128字节。

③CPU对储存器读写的过程: 一个cpu如果要对储存器进行操作,就要具有以下三个信息1.储存单元的地址2.进行读取或写入的命令 3.读取或者写入的信息 这里就要引入cpu的总线了,而总线对应上面三个信息分为1.地址总线 2.控制总线 3.数据总线。

图片[2]-h1汇编语言的产生以及相关基础知识-Drton1博客

④地址总线:

如果一个cpu的地址总线长度(宽度)为10,那么最多可以找到2的十次方 1023的地址,地址总线上传送的是CPU向存储器、I/O接口设备发出的地址信息,地址总线上传送的地址信息仅由CPU发出,因此,地址总线上的信息是单向传输的,CPU是通过地址总线来指定存储单元的,它决定了CPU访问内存的寻址能力和范围大小

⑤控制总线:

控制总线的宽度决定了 CPU对系统中其他器件的控制能力,控制总线传送的是各种控制信号,实现对外部器件进行控制,由CPU至存储器、I/O接口设备的控制信号,有I/O接口送向CPU的应答信号、请求信号,因此,控制总线是上的信息是双向传输的。控制信号包括时序信号、状态信号和命令信号(如读写信号、忙信号、中断信号)等。

⑥数据总线:

数据总线的宽度决定了 CPU 与其他器件进行数据传送时的一次数据传送量;数据总线上的信息是双向传输的。

⑦cpu内部总线:在CPU内部,用来运算单元/寄存器相互传递数据的总线叫内部数据总线,它决定了CPU的字长

模拟一次交互过程:

  1. CPU通过地址总线将地址信息发出;
  2. CPU通过控制总线发出内存读命令,选中存储器芯片并通知其要进行读操作;
  3. 发出的地址信息对应的存储单元中的数据通过数据总线送人CPU。
动图
© 版权声明
THE END
喜欢就支持一下吧
点赞20 分享
评论 共1条

请登录后发表评论