汇编语言课件基础知识

上传人:我*** 文档编号:146138934 上传时间:2020-09-26 格式:PPT 页数:121 大小:443.50KB
返回 下载 相关 举报
汇编语言课件基础知识_第1页
第1页 / 共121页
汇编语言课件基础知识_第2页
第2页 / 共121页
汇编语言课件基础知识_第3页
第3页 / 共121页
汇编语言课件基础知识_第4页
第4页 / 共121页
汇编语言课件基础知识_第5页
第5页 / 共121页
点击查看更多>>
资源描述

《汇编语言课件基础知识》由会员分享,可在线阅读,更多相关《汇编语言课件基础知识(121页珍藏版)》请在金锄头文库上搜索。

1、第1章 汇编语言基础知识,教学重点,用汇编语言进行程序设计所需要了解的基本知识。 在课堂上,重点掌握几个内容: PC机软硬件系统 认识汇编语言 基础是熟悉寄存器组 难点是各种寻址方式,1.1 计算机系统概述,硬件(Hardware) 中央处理单元CPU 控制器、运算器、寄存器 存储器 主存储器:RAM和ROM 辅助存储器:磁盘、光盘、U盘 外部设备 输入设备和输出设备 软件(Software) 系统软件 应用软件,微型计算机的系统组成,汇编语言程序员看到的硬件,中央处理单元 CPU(Intel 80 x86) 对汇编语言程序员,最关心其中的寄存器 存储器(主存储器) 呈现给汇编语言程序员的,是

2、存储器地址 外部设备(接口电路) 汇编语言程序员看到的是端口(I/O地址),寄存器(Register),寄存器是CPU内部的高速存储单元 它们为处理器提供各种操作所需要的数据或地址等信息 汇编语言程序采用它们各自的符号名 16位Intel 8086/80286 CPU中有 AXBXCXDX SIDIBPSP 32位80386/80486/Pentium系列 CPU中有 EAXEBXECXEDX ESIEDIEBPESP,存储器地址(Address),存储器是由大量存储单元组成,需要用编号区别每个单元:编号地址 存储器地址是存储器中存储单元的编号 每个存储单元存放一个字节量的数据 一个字节B(B

3、yte)8个二进制位b(bit) 采用十六进制数来表达地址 Intel 8086具有1兆字节(1MB)存储器容量 存储器地址表示为:00000H FFFFFH 其中大写H(或小写h)表示是十六进制数,端口(Port),I/O接口电路由接口寄存器组成,需要用编号区别各个寄存器:编号地址 I/O地址是接口电路中寄存器的编号 端口是I/O地址的通俗说法 系统通过这些端口与外设进行通信 采用十六进制数来表达端口 Intel 8086支持64K个8位端口 I/O地址可以表示为:0000H FFFFH,计算机的程序设计语言,机器语言(Machine Language) B8 64 00 05 00 01

4、汇编语言(Assembly Language) mov ax,100 ;取得一个数据100(MOV是传送指令) add ax,256 ;实现100+256(ADD是加法指令) 高级语言(High-level Language) 100256,什么是汇编语言,以助记符形式表示计算机指令 助记符(mnemonic)是便于人们记忆、并能描述指令功能和指令操作数的符号 助记符是表明指令功能的英语单词或其缩写 汇编格式指令以及使用它们编写程序的规则就形成汇编语言(Assembly Language) 汇编语言程序:用汇编语言书写的程序 汇编程序:将汇编语言程序“汇编”成机器代码目标模块的程序,汇编语言和

5、高级语言的比较-1,汇编语言与处理器密切相关 汇编语言程序的通用性、可移植性较差 高级语言与具体计算机无关 高级语言程序是标准化语言,可在多种计算机上编译后执行,汇编语言和高级语言的比较-2,汇编语言功能有限、涉及硬件细节 程序编写比较繁琐,调试比较困难 高级语言提供了强大的功能,不必关心琐碎问题 类似自然语言的语法,易于掌握和应用,汇编语言和高级语言的比较-3,汇编语言本质上就是机器语言 可以直接、有效地控制计算机硬件 易于产生速度快、容量小的高效率目标程序 高级语言不针对具体计算机系统 不易直接控制计算机的各种操作 目标程序比较庞大、运行速度较慢,汇编语言的特点,汇编语言的优点: 直接控制

6、计算机硬件部件 编写“时间”和“空间”两方面最有效程序 汇编语言的缺点: 与处理器密切有关 需要熟悉计算机硬件系统、考虑许多细节 编写繁琐,调试、维护、交流和移植困难,汇编和高级语言混合编程,汇编语言的优点使得它在程序设计中占有重要的位置,不可被取代 汇编语言的缺点使得人们主要采用高级语言进行程序开发工作 有时需要采用高级语言和汇编语言混合编程,互相取长补短,更好地解决实际问题,汇编语言的应用场合,程序要具有较快的执行时间,或者只能占用较小的存储容量 程序与计算机硬件密切相关,程序要直接、有效地控制硬件 大型软件需要提高性能、优化处理的部分 没有合适的高级语言、或只能采用汇编语言的时候 分析具

7、体系统尤其是该系统的低层软件、加密解密软件、分析和防治计算机病毒等等,1.2 数据表示,1.2.1 数制 二进制数、十六进制数 它们与十进制数的相互转换 1.2.2 编码 BCD码和ASCII码的规律 1.2.3 有符号数的表示法 有符号整数的补码表示 1.2.4 二进制运算 二进制的算术运算和逻辑运算 十进制的加减运算,二进制数,便于计算机存储及物理实现 特点:逢二进一,由0和1两个数码组成,基数为2,各个位权以2k表示 二进制数: anan-1a1a0.b1b2bm an2nan-12n-1a121a020 b12-1b22-2bm2-m 其中ai,bj非0即1,十六进制数,用于表达二进制

8、数,相互转换简单 基数16,逢16进位,位权为16k,16个数码: 0,1,2,3,4,5,6,7,8,9 A,B,C,D,E,F 十六进制数: anan-1a1a0.b1b2bm an16nan-116n-1a1161 a0160 b116-1b216-2bm16-m 其中ai,bj是0F中的一个数码,整数部分转换:用除法 十进制数整数部分不断除以基数2或16,并记下余数,直到商为0为止 由最后一个余数起逆向取各个余数,则为转换成的二进制和十六进制数 12601111110B 1267EH,进制转换,小数部分转换:用乘法 分别乘以各自的基数,记录整数部分,直到小数部分为0为止 0.81250

9、.1101B 0.81250.DH 小数转换会发生总是无法乘到为0的情况 可选取一定位数(精度) 将产生无法避免的转换误差,进制转换,二或十六进制数转换为十进制数,方法:按权展开 二进制数转换为十进制数 0011.1010B 12112012-102-212-3 3.625 十六进制数转换为十进制数 1.2H 11602161 1.125,十六进制数用后缀字母H,二进制数用后缀字母B,BCD码(Binary Coded Decimal),二进制编码的十进制数 一个十进制数位09用4位二进制编码来表示 常用8421 BCD码:低10个4位二进制编码表示 压缩BCD码:一个字节表达两位BCD码 非

10、压缩BCD码:一个字节表达一位BCD码(低4位表达数值,高4位常设置为0) BCD码很直观 BCD码:0100 1001 0111 1000.0001 0100 1001 十进制真值:4978.149,BCD码便于输入输出,表达数值准确,ASCII码(美国标准信息交换码),标准ASCII码用7位二进制编码,有128个 不可显示的控制字符 前32个和最后一个编码 回车CR:0DH 换行LF:0AH 响铃BEL:07H 可显示和打印的字符:20H后的94个编码 数码09:30H39H 大写字母AZ:41H5AH 小写字母az:61H7AH 空格:20H 扩展ASCII码:最高D7位为1,表达制表符

11、,真值和机器数,真值:现实中真实的数值 机器数:计算机中用0和1数码组合表达的数值 无符号数:只表达0和正整数的定点整数 有符号数:表达负整数、0和正整数的定点整数 符号位需要占用一个位 常用机器数的最高位 0表示正数、1表示负数,真值和机器数,定点数:固定小数点的位置表达数值的机器数 定点整数:将小数点固定在机器数的最右侧表达的整数 定点小数:将小数点固定在机器数的最左侧表达的小数 浮点数:小数点浮动表达的实数,补码,有符号整数在计算机中默认采用补码 最高位表示符号:正数用0,负数用1 正数补码:直接表示数值大小(同无符号数) 负数补码:将对应正数补码取反加1 105补码01101001B

12、-105补码01101001B取反1 10010110B110010111B 8位二进制补码表示的数值范围:-128+127 16位二进制补码表示的数值范围:-215+215-1 32位二进制补码表示的数值范围:-231+231-1,负数求补,负数真值“取反加1”得机器数补码 负数补码“取反加1”得到负数真值 补码:11100000B 真值:-(11100000求反1)-(00011111+1) -00100000-25-32 负数求补运算,等效于用带借位的0作减法 真值:-8,补码:-8补码00H-08HF8H 补码:11111000,真值:-(00H-F8H)-08H-8,用十六进制表达和

13、运算,方便!,十六进制数的加减运算,二进制和十六进制数之间具有对应关系 整数从左向右 小数从右向左 每4个二进制位对应一个十六进制位 00111010B3AH,F2H11110010B 十六进制数的加减运算类似十进制 逢16进位1,借1当16 23D9H94BEHB897H A59FH62B8H42E7H,80386,80486,奔腾,奔腾II,奔腾4,80286,8086,奔腾III,IA-64(安腾),4004,不是我不明白, 这世界变化太快。 扎扎实实掌握知识, 以不变应万变!,IA-32,1.3 X86处理器,8086,16位结构的微处理器:数据总线为16位 主存容量1MB:地址总线为

14、20位 时钟频率5MHz(IBM PC使用4.77MHz) 准16位微处理器8088:外部数据总线为8位 IBM PC和PC/XT机使用Intel 8088 CPU 8086的16位指令系统:Intel 80 x86基本指令集 80186/80188的核心是8086/8088,配以支持电路 80186/80188指令系统比8086指令系统新增了若干条实用的指令 涉及堆栈操作、移位指令、输入输出指令、过程指令和边界检测及乘法指令,80286,16位数据总线,24位地址总线(16MB主存) 实方式(Real Mode) 与8086工作方式一样 保护方式(Protected Mode) 存储管理、保

15、护机制和多任务管理的硬件支持 IBM PC/AT机使用Intel 80286 CPU 80286指令系统新增15条保护方式指令,16位Intel 80 x86 CPU:8086 / 80186 / 80286 32位Intel 80 x86 CPU(IA-32微处理器): 80386,80486,Pentium系列 英特尔32位结构:IA-32(Intel Architecture-32),80386,32位结构 数据总线32位,地址总线32位,寻址4GB主存 虚拟8086方式(Virtual 8086 Mode) 保护方式下的8086工作方式 系统管理方式(System Management

16、 Mode) 低功耗节能状态 80386指令系统全面升级为32位 兼容原来16位指令系统 新增有关位操作、条件设置指令以及对控制、调试和测试寄存器的传送指令等,80486,8048680386803878KB Cache 浮点处理单元FPU 8086/8088:8087 80286:80287 80386:80387 高速缓冲存储器Cache 复杂指令集计算机CISC融合精简指令集计算机RISC的技术特点 80486指令系统新增用于多处理器和内部Cache操作的6条指令,Pentium,俗称的80586微处理器,奔腾微处理器 32位结构,连接主存的数据总线是64位 超标量(Superscalar)技术 Pentium指令系统新增 一条8字节比较交换指令 一条处理器识别指令 4条系统专用指令,Pentium Pro,原称P6,中文名称为“高能奔腾” 两个芯片组成 扩展的超标量技术 动态执行技术 Pentium Pro新增3条指令,Pentium II,多媒体扩展指令(MMX指令) MMX(MutliMedia eXtension) 整数运算多媒体指令 优化图像、音频、视频和通信方

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号