1、本课件由汇编网( )制作提供第 1章 基础知识 1.1 机器语言 1. 9 数据总线 1.2 汇编语言的产生 1.10 控制总线 1.3 汇编语言的组成 1.11 内存地址空间(概述) 1.4 存储器 1.12 主板 1.5 指令和数据 1.13 接口卡 1.6 存储单元 1.14 各类存储器芯片 1.7 CPU对存储器的读写 1.15 内存地址空间 1.8 地址总线本课件由汇编网( )制作提供引言 汇编语言是直接在硬件之上工作的编程语言,首先要了解硬件系统的结构,才能有效的应用汇编语言对其编程。 在本章中,对硬件系统结构的问题进行一部分的探讨,以使后续的课程可在一个好的基础上进行。本课件由汇
2、编网( )制作提供引言 当课程进行到需要补充新的基础知识(关于编程结构或其他的)时候,再对相关的基础知识进行介绍和探讨。 本书的原则是,以后用到的知识,以后再说。本课件由汇编网( )制作提供引言 汇编课程的研究重点放在如何利用硬件系统的编程结构和指令集有效灵活的控制系统进行工作。本课件由汇编网( )制作提供1.1 机器语言 机器语言是机器指令的集合。 机器指令展开来讲就是一台机器可以正确执行的命令。本课件由汇编网( )制作提供1.1 机器语言 指令: 01010000 (PUSH AX) 电平脉冲:本课件由汇编网( )制作提供1.1 机器语言 以后我们提到的计算机是指由 CPU 和其他受 CP
3、U 直接或间接控制的芯片、器件、设备组成的计算机系统; 比如我们最常见的 PC 机。本课件由汇编网( )制作提供1.1 机器语言 程序员们将 0、 1 数字编程的程序代码打在纸带或卡片上, 1打孔, 0不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算。 示例应用 8086CPU完成运算:S = 768 + 12288 1280本课件由汇编网( )制作提供1.1 机器语言 S = 768 + 12288 - 1280 机器码:101100000000000000000011000001010000000000110000001011010000000000000101 假如将程序错写成以下
4、这样,请找处错误:101100000000000000000011000001010000000000110000000101101000000000000101本课件由汇编网( )制作提供1.1 机器语言 在显示器上输出 “ welcome to masm”。机器码 看到这样的程序,你会有什么感想? 如果程序里有一个 “ 1 ”被误写为“ 0 ”,又如何去查找呢?本课件由汇编网( )制作提供1.2 汇编语言的产生 汇编语言的主体是汇编指令。 汇编指令和机器指令的差别在于指令的表示方法上。汇编指令是机器指令便于记忆的书写格式。 汇编指令是机器指令的助记符。本课件由汇编网( )制作提供1.2 汇
5、编语言的产生 机器指令: 1000100111011000 操作: 寄存器 BX的内容送到 AX中 汇编指令: MOV AX,BX 这样的写法与人类语言接近,便于阅读和记忆。本课件由汇编网( )制作提供1.2 汇编语言的产生 计算机能读懂的只有机器指令,那么如何让计算机执行程序员用汇编指令编写的程序呢?本课件由汇编网( )制作提供用汇编语言编写程序的工作过程本课件由汇编网( )制作提供1.3 汇编语言的组成 汇编语言由以下 3类组成: 1、汇编指令(机器码的助记符) 2、伪指令 (由编译器执行) 3、其它符号(由编译器识别) 汇编语言的核心是汇编指令,它决定了汇编语言的特性。本课件由汇编网(
6、)制作提供1.4 存储器 CPU 是计算机的核心部件它控制整个计算机的运作并进行运算,要想让一个 CPU 工作,就必须向它提供指令和数据。 指令和数据在存储器中存放,也就是平时所说的内存。本课件由汇编网( )制作提供1.4 存储器 在一台 PC机中内存的作用仅次于 CPU。 离开了内存,性能再好的 CPU也无法工作。本课件由汇编网( )制作提供1.4 存储器 磁盘不同于内存,磁盘上的数据或程序如果不读到内存中,就无法被 CPU 使用。本课件由汇编网( )制作提供1.5 指令和数据 指令和数据是应用上的概念。 在内存或磁盘上,指令和数据没有任何区别,都是二进制信息。本课件由汇编网( )制作提供1
7、.5 指令和数据 二进制信息:1000100111011000 89D8H (数据)1000100111011000 MOV AX,BX (程序)本课件由汇编网( )制作提供1.6 存储单元 存储器被划分为若干个存储单元,每个存储单元从 0开始顺序编号; 例如:一个存储器有 128个存储单元,编号从 0127。如右图示:本课件由汇编网( )制作提供1.6 存储单元 对于大容量的存储器一般还用以下单位来计量容量(以下用 B来代表 Byte): 1KB=1024B 1MB=1024KB 1GB=1024MB 1TB=1024GB 磁盘的容量单位同内存的一样,实际上以上单位是微机中常用的计量单位。本
8、课件由汇编网( )制作提供1.7 CPU对存储器的读写 CPU要想进行数据的读写,必须和外部器件(标准的说法是芯片)进行三类信息的交互: 存储单元的地址(地址信息) 器件的选择,读或写命令(控制信息) 读或写的数据(数据信息)本课件由汇编网( )制作提供1.7 CPU对存储器的读写 那么 CPU是通过什么将地址、数据和控制信息传到存储芯片中的呢? 电子计算机能处理、传输的信息都是电信号,电信号当然要用导线传送。本课件由汇编网( )制作提供1.7 CPU对存储器的读写 在计算机中专门有连接 CPU和其他芯片的导线,通常称为总线。 物理上:一根根导线的集合; 逻辑上划分为: 地址总线 数据总线 控
9、制总线 图示本课件由汇编网( )制作提供1.7 CPU对存储器的读写 总线在逻辑上划分的图示:本课件由汇编网( )制作提供1.7 CPU对存储器的读写 CPU在内存中读或写的数据演示: 读演示 写演示 从上面我们知道 CPU是如何进行数据读写的。可是我们如何命令计算机进行数据的读写呢?本课件由汇编网( )制作提供1.7 CPU对存储器的读写 对于 8086CPU,下面的机器码能够完成从 3号单元读数据: 机器码: 101000000000001100000000 含义:从 3号单元读取数据送入寄存器 AX CPU接收这条机器码后将完成上面所述的读写工作。本课件由汇编网( )制作提供1.7 CPU对存储器的读写 机器码难于记忆,用汇编指令来表示,情况如下: 机器码: 101000000000001100000000 对应的汇编指令: MOV AX,3 含义:传送 3号单元的内容到 AX本课件由汇编网( )制作提供1.8 地址总线 CPU是通过地址总线来指定存储单元的。 地址总线上能传送多少个不同的信息,CPU就可以对多少个存储单元进行寻址。