第1章 汇编语言基础知识
- 格式:doc
- 大小:128.50 KB
- 文档页数:7
第1章 汇编语言基础知识
1.教学目的:了解计算机语言的分类和特点,掌握基于微处理器的计算机系统构成和不同进位计数制之间的转换及计算机中数的表示。
2.教学要求:
①了解计算机语言的分类和特点
②掌握计算机的系统构成
③熟练掌握不同进制之间转换和计算机中数的表示
3.教学重点:
①不同进制之间转换
②补码表示法
4.掌握难点:
①不同进制之间转换
②补码表示法
5.教学进程安排:P1~P18
6.教学方法:
①一般叙述基本概念
②着重课堂讲授不同进制之间转换、数的补码表示法
7.教学内容摘要:
1.1 计算机系统的组成
微型计算机系统包括硬件和软件两部分。
1.1.1 硬件系统
图1.1给出了微型计算机组成框图。
图1.1 微型计算机硬件系统组成
1.运算器
2.控制器
3.存储器
(1)“读操作”:是指CPU将存储器中存储的某一部分信息取出来进行处理的操作。
(2)“写操作”:是指CPU用新的信息刷新存储器原来存储的某一部分内容的操作。 输入设备 输出设备 接
口
主板
输入/输出芯片 存 储 器
运 算 器
控 制 器 接
口 注意:存储器的读/写操作是以字节为单位按存储器存储单元地址进行的。
4.输入/输出设备
计算机硬件系统由运算器、控制器、主存储器和输入/输出接口五大部件组成。这五大部件通过总线连接起来,它们共同构成了计算机的基本硬件系统。
1.1.2 软件系统
计算机软件可以分成系统软件和应用软件两大类,图1.2表示了计算机软件的层次。
图1.2 软件系统的层次
1.2 计算机语言
计算机语言:机器语言、汇编语言、高级语言
1.2.1 机器语言
机器指令:由硬件电器设定的、计算机能够接受的一组二进制代码。每一条指令完成一个特定的操作。
指令系统:某种CPU所有机器指令的集合。
机器语言程序:为了让计算机完成特定任务,按一定顺序组织到一起的机器指令系列。
例:100+256
特点:理解困难,容易出错,不便于交流。
1.2.2 汇编语言
汇编指令:用助记符表示的机器指令,与机器指令一一对应。
汇编语言:汇编指令和编写程序的规则。用汇编语言编写的程序叫做汇编源程序。
汇编程序:是一个系统软件,其功能是将汇编源程序翻译成机器指令。 二进制代码:
10111000 01100100 00000000
00000101 00000000 00000001
10100011 00000000 00100000 十六进制代码:
B8 64 00
05 00 01 A3 00 20 系统软件
软件 数据库管理系统
工具软件 诊断与维护程序
调试程序
编辑程序
装配链接程序 语言处理程序 汇编程序
解释程序
编译程序 操作系统 单用户操作系统
多用户操作系统
网络操作系统
„„
应用软件 软件包
用户程序 图1.3表示了汇编程序到机器指令的转换。
图1.3 汇编程序转换为机器指令
例:100+256
mov ax,100
add ax,256
mov [2000],ax
特点:直接控制硬件,速度快,多用于实时控制
1.2.3 高级语言
高级语言:接近自然语言和数学公式。如:Basic和C语言等等。用高级语言编写的程序叫做高级语言源程序。
图1.4表示了高级语言程序到机器指令的转换。
图1.4 高级语言程序转换为机器指令
例:100+256
a=100+256
特点:简单易学,便于理解
1.3 计算机中数的表示
信息在输入计算机内部时,都必须用基2码编码表示,其原因如下:
1. 基2码在物理上最容易实现。
2.基2码用来表示二进制数,其编码、加减运算规则简单。
3.基2码的两个符号“1”和“0”正好与逻辑数据“真”与“假”相对应,为计算机实现逻辑运算带来了方便。
1.3.1 数制简介
表1.1 各数制基数及进位规则
十进制(D) 基 数:0 1 2 3 4 5 6 7 8 9
进位规则:逢十进一 例:25D
二进制(B) 基 数:0 1
进位规则:逢二进一 例:11001B
八进制(O) 基 数:0 1 2 3 4 5 6 7
进位规则:逢八进一 例:31O
十六进制(H) 基 数:0 1 2 3 4 5 6 7 8 9 A B C D E F
进位规则:逢十六进一 例:19H
BCD码 用四位(或八位)二进制表示一位BCD码
基数:0 1 2 3 4 5 6 7 8 9
进位规则:逢十进一 例:0010 0101表示25
1.3.2 二进制运算 高级语言源程序 编译程序/解释程序 机器指令
(翻译) 汇编源程序 汇编程序 机器指令 加法规则:0+0=0, 0+1=1, 1+0=1, 1+1=0(高位进1)
乘法规则:0Χ0=0,0Χ1=0,1Χ0=0,1Χ1=1
例:
逻辑运算:
“与”运算(AND:∧):只有当A、B两个变量的值都为1时,结果才为1。
“或”运算(OR: ∨ ): A、B两个变量中只要有一个为1,结果就为1
“非”运算(NOT: — ):1“非”的结果为0;0 “非”的结果为1;
“异或” 运算(XOR:∨):当两个变量的取值相异时结果为1
表1.2 二进制逻辑运算真值表
A B A ∧B A∨B A A ∨ B
0 0 0 0 1 0
0 1 0 1 1 1
1 0 0 1 0 1
1 1 1 1 0 0
1.3.3 各种数制对照表
表1.3 各种数制对照表
十进制 二进制 八进制 十六进制 BCD码
0 0000 0 0 0000
1 0001 1 1 0001
2 0010 2 2 0010
3 0011 3 3 0011
4 0100 4 4 0100
5 0101 5 5 0101
6 0110 6 6 0110
7 0111 7 7 0111
8 1000 10 8 1000
9 1001 11 9 1001
10 1010 12 A 0001 0000
11 1011 13 B 0001 0001
12 1100 14 C 0001 0010
13 1101 15 D 0001 0011
14 1110 16 E 0001 0100
15 1111 17 F 0001 0101
1.3.4 各数制间的转换 00001001
+00001011
00010100 1. 十进制数与二进制数之间的转换
(1)十进制整数转换成二进制整数
方法:除2取余法
注意:第一次得到的余数为二进制数的最低位,最后得到的余数为二进制数的最高位。
【例1-1】将十进制数97转换成二进制数。其过程如下:
即A0=1
即A1=0
即A2=0
即A3=0
即A4=0
即A5=1
即A6=1;
结束
最后结果为(97)10 =(A6 A5 A4 A3 A2 A1 A0)2=(1100001)2
(2)十进制小数转换成二进制小数
方法:乘2取整法
注意:最后将每次得到的整数部分(必定是0或1)按先后顺序从左到右排列即得到所对应二进制小数。
【例1-2】将十进制小数0.6875转换成二进制小数。如下:
0.6875
× 2
1.3750 整数部分为1,即A-1=1
0.3750 余下的小数部分
× 2
0.7500 整数部分为0,即A-2=0
0.7500 余下的小数部分
× 2
1.5000 整数部分为1,即A-3=1
0.5000 余下的小数部分
× 2
1.0000 整数部分为1,即A-4=1
0.0000 余下的小数部分为0,结束
最后结果为(0.6875)10=(0.A-1A-2A-3A-4) 2 =(0.1011)2
(3)一般的十进制数转换成二进制数
为了将一个既有整数又有小数部分的十进制数转换成二进制数,可以将其整数部分和小数部分分别进行转换,然后再组合起来。例如:
(4)二进制数转换十进制数
方法:按位权展开后相加。
例如:(111.11)2 =1×22+1×21+1×20+1×2-1+1×2-2
=4+2+1+0.5+0.25
=(7.75)10
2. 十进制与八进制之间的转换
(1)十进制整数转换成八进制整数
方法:除8取余法
(2)十进制小数转换成八进制小数
方法:乘8取整法 2 97 余数为1,
余数为0,
余数为0,
余数为0,
余数为0,
余数为1,
余数为1,
余数为0 2 48
2 24
2 12
2 6
2 3
2 1
商为 0