1、1 单片机原理及应用单片机原理及应用 华中科技大学华中科技大学 电气与电子工程学院电气与电子工程学院 徐徐 雁雁 单片机是什么?单片机是什么?将将微处理器微处理器、一定容量的、一定容量的存储器存储器、I/OI/O接口电路接口电路以及定时以及定时 / /计数器等功能部件集计数器等功能部件集成成在一块集成电路芯片上的在一块集成电路芯片上的微型计算机微型计算机。为什么要学习单片机?为什么要学习单片机?学些什么?学些什么?教学大纲目的1以高性价比的51单片机为对象,了解微控制器和微处理器的基本原理和设计思想; 培养逻辑思维能力;构建和完善知识结构,为解决复杂的实际工程问题奠定基础。2. 通过学习初步具
2、备设计单片机应用系统的能力;将知识点与生活实际相联系(如计时器、智能电表、智能手机等),培养学习兴趣和动手实践能力,为后续的实验课和课程设计打好基础。3. 根据工程管理方法和原则,讲解复杂工程问题的典型案例, 培养学生使用现代工具解决工程实际问题的创新意识和能力。 4. 注重基础知识和主动学习并重,在学习现有计算机知识的同时,跟踪计算机技术的最新发展,培养发现问题和分析问题以及综合应用知识的能力,逐步树立自主学习和终身学习的观念。课程目标掌握: 1 15151单片机系统的基本原理;单片机系统的基本原理; 2. 2. 汇编语言程序设计方法;汇编语言程序设计方法; 3. 3. 基本的接口技术;基本
3、的接口技术; 4. 4. 微机整体概念和初步设计微机整体概念和初步设计方法方法。了解: 嵌入式系统的嵌入式系统的概念概念;典型实际应用。;典型实际应用。培养: 严格的逻辑思维严格的逻辑思维能力能力; 自觉运用计算机技术解决问题的自觉运用计算机技术解决问题的意识意识。 本课程内容主要教材: 单片机原理及应用技术单片机原理及应用技术 华中科技大学出版社华中科技大学出版社 汪建汪建 主编主编 单片机原理及应用单片机原理及应用 清华大学出版社清华大学出版社 黄勤黄勤 主编主编 MCS51MCS51系列系列单片机原理及应用实验指导书单片机原理及应用实验指导书 西三楼西三楼 209 209 购买购买 40
4、40学时课堂教学学时课堂教学+24+24学时实验学时实验+2+2周课程设计周课程设计课堂教学内容1. 微型计算机基础2. 51单片机基本结构和工作原理3. 51单片机指令系统4. 汇编语言程序设计5. 51单片机存储器扩展技术6. 输入/输出与中断系统7. 51单片机硬件资源的应用8. 51单片机I/O接口技术9. 单片机应用系统设计实验课 5次实验: 结合课堂教学,每次结合课堂教学,每次4 4学时;学时; 验证性和验证性和自行编程自行编程两种实验。两种实验。 1次考试: 按要求限时完成设计功能;按要求限时完成设计功能; 汇编程序设计和实际操作。汇编程序设计和实际操作。 课程设计设计实现一个具
5、有实用功能的小系统设计实现一个具有实用功能的小系统 可选做,可自定可选做,可自定 自行设计,一人一组自行设计,一人一组 网上报名网上报名 有关本课程学习的几点建议4.4.听课、复习、作业、实验和设计环环都重要听课、复习、作业、实验和设计环环都重要 用科学的方法学习用科学的方法学习2.2.是一门实践性、应用性很强的课程是一门实践性、应用性很强的课程 仅听懂不够仅听懂不够, ,重在培养动手能力重在培养动手能力3.3.硬件硬件/ /软件同样重要、不可偏废软件同样重要、不可偏废 硬件是骨架,软件是灵魂硬件是骨架,软件是灵魂1.1.前期基础课程:数字电路与微机原理前期基础课程:数字电路与微机原理 这方面
6、知识需温习这方面知识需温习第一章第一章 微型计算机基础微型计算机基础计算机发展概述计算机发展概述1.1单片机概述单片机概述1.2单片机特点及应用领域单片机特点及应用领域1.3单片机应用系统开发简介单片机应用系统开发简介1.4数制与码制数制与码制1.521.1 1.1 计算机的发展概述计算机的发展概述1.1.1 1.1.1 电子计算机的问世及其经典结构电子计算机的问世及其经典结构 1946年2月15日,第一台电子数字计算机问世.12开创了计算机科学技术的新纪元开创了计算机科学技术的新纪元,对人类对人类的生产和生活方式产生了巨大的影响的生产和生活方式产生了巨大的影响 。 美籍匈牙利数学家美籍匈牙利
7、数学家冯冯诺依曼诺依曼在方案的设计上做在方案的设计上做出了重要的贡献。出了重要的贡献。1946年年6月,他又提出了月,他又提出了“程程序存储序存储”和和“二进制运算二进制运算”的思想,进一步构建的思想,进一步构建了计算机由运算器、控制器、存储器、输入设备了计算机由运算器、控制器、存储器、输入设备和输出设备组成这一计算机的和输出设备组成这一计算机的经典经典结构。结构。1.1 1.1 计算机的发展概述计算机的发展概述131.1 1.1 计算机的发展概述计算机的发展概述冯冯诺依曼诺依曼结构哈佛哈佛结构?1.1 计算机的发展概述计算机的发展概述 5电子计算机技术的发展,相继经历了五个时代电子计算机技术
8、的发展,相继经历了五个时代:电子管计算机;晶体管计算机;集成电路计算机;大规模集成电路计算机;超大规模集成电路计算机。 计算机的结构仍然没有突破冯计算机的结构仍然没有突破冯诺依曼诺依曼提出的计算机的经典结构框架。提出的计算机的经典结构框架。1.1 1.1 计算机的发展概述计算机的发展概述15微型计算机系统微型计算机系统硬件硬件微型计算机微型计算机(主机主机)微处理微处理器器 (CPU)软件软件外围设备外围设备运算器运算器控制器控制器主存储主存储器器 RAMROM外部设备外部设备辅助设备辅助设备 输入设备输入设备(键盘、扫描仪、语音识别等键盘、扫描仪、语音识别等) 输出设备输出设备(显示器、打印
9、机、绘图仪等显示器、打印机、绘图仪等)输入输入/ /输出接口输出接口(PIO、SIO、CTC、ADC、DAC) 总线总线 (AB、DB、CB)系统软件系统软件( (操作系统,编辑、编译程序,故障诊断操作系统,编辑、编译程序,故障诊断, ,监控程序监控程序) )应用软件应用软件( (科学计算,工业控制,数据处理科学计算,工业控制,数据处理) )程序设计语言程序设计语言( (机器语言、汇编语言、高级语言机器语言、汇编语言、高级语言) )电源电路电源电路时钟电路时钟电路1.1 1.1 计算机的发展概述计算机的发展概述161.1.2 1.1.2 微型计算机的组成及其应用形态微型计算机的组成及其应用形态
10、一、微型计算机的组成一、微型计算机的组成 19711971年,年,INTELINTEL公司的与日本公司的与日本商业通讯公司合作研制台式计算商业通讯公司合作研制台式计算器时,将原始方案的十几个芯片器时,将原始方案的十几个芯片压缩成压缩成3 3个集成电路芯片。其中的个集成电路芯片。其中的2 2个芯片分别用于存储程序和数据,个芯片分别用于存储程序和数据,另一芯片集成了运算器和控制器另一芯片集成了运算器和控制器及一些寄存器,称为及一些寄存器,称为微处理器微处理器(即(即Intel 4004Intel 4004)。)。4004微处理器1.1 1.1 计算机的发展概述计算机的发展概述17 微处理器、存储器
11、加上微处理器、存储器加上I/OI/O接口电路组成微型接口电路组成微型计算机。计算机。各部分通过地址总线(各部分通过地址总线(ABAB)、数据总线)、数据总线(DBDB)和控制总线()和控制总线(CBCB)相连。)相连。三种总线的作用三种总线的作用?1.1 1.1 计算机的发展概述计算机的发展概述18二、微型计算机的应用形态二、微型计算机的应用形态 从应用形态上,微机可以分成三种:从应用形态上,微机可以分成三种: 多板机(系统机)多板机(系统机) 将将CPUCPU、存储器、存储器、I/OI/O接口电路和总线接口等组装在一块接口电路和总线接口等组装在一块主机板(即微机主板)。各种适配板卡插在主机板
12、的扩展主机板(即微机主板)。各种适配板卡插在主机板的扩展槽上并与电源、软槽上并与电源、软/ /硬盘驱动器及光驱等装在同一机箱内,硬盘驱动器及光驱等装在同一机箱内,再配上系统软件,就构成了一台完整的微型计算机系统再配上系统软件,就构成了一台完整的微型计算机系统(简称系统机)。(简称系统机)。工业PC机 也属于多板机。也属于多板机。1.1 1.1 计算机的发展概述计算机的发展概述19 单板机单板机 将将CPUCPU芯片、存储器芯片、芯片、存储器芯片、I/OI/O接口芯片和简单的接口芯片和简单的I/OI/O设设备等装配在一块印刷电路板上,再配上监控程序(固化在备等装配在一块印刷电路板上,再配上监控程
13、序(固化在ROMROM中),就构成了一台单板微型计算机(简称单板机)中),就构成了一台单板微型计算机(简称单板机)。单板机单板机1.1 1.1 计算机的发展概述计算机的发展概述20 单板机的单板机的I/O设备简单,设备简单,软件资源少。主要用于微型软件资源少。主要用于微型计算机原理的计算机原理的教学教学及及简单的简单的测控系统。测控系统。 单片机单片机 在一片集成电路芯片上集成微处理器、存储器、在一片集成电路芯片上集成微处理器、存储器、I/O接接口电路,从而构成了单芯片微型计算机,即单片机。口电路,从而构成了单芯片微型计算机,即单片机。 三种应用形态的比较三种应用形态的比较 :单板机单板机单片
14、机单片机系统机(多板机)系统机(多板机)1.1 1.1 计算机的发展概述计算机的发展概述21 系统机(桌面应用)系统机(桌面应用)属于通用计算机,主要应属于通用计算机,主要应用于数据处理、办公自动化及辅助设计等广泛用于数据处理、办公自动化及辅助设计等广泛领域。领域。 单片机(嵌入式)单片机(嵌入式)属于专用计算机,主要应属于专用计算机,主要应用于智能仪表、智能传感器、智能家电、智能办用于智能仪表、智能传感器、智能家电、智能办公设备、汽车及军事电子设备等应用系统。公设备、汽车及军事电子设备等应用系统。 单片机单片机体积小、价格低、可靠性高,体积小、价格低、可靠性高,其其嵌入式应用形态具有独特的优
15、势。嵌入式应用形态具有独特的优势。1.1 1.1 计算机的发展概述计算机的发展概述221.2 1.2 单片机概述单片机概述1.2.1 1.2.1 单片机的发展过程单片机的发展过程 单片机技术发展过程可分为三个主要阶段:单片机技术发展过程可分为三个主要阶段: 单芯片微机形成阶段单芯片微机形成阶段 19761976年,年,IntelIntel公司推出了公司推出了MCS-48MCS-48系列单片系列单片机机 。8 8位位CPUCPU、1K1K字节字节ROMROM、6464字节字节RAMRAM、2727根根I/OI/O线和线和1 1个个8 8位定时位定时/ /计数器。计数器。 特点是:存储器容量较小,
16、寻址范围小(不大特点是:存储器容量较小,寻址范围小(不大于于4K4K),无串行接口,指令系统功能不强。),无串行接口,指令系统功能不强。 23 性能完善提高性能完善提高 19801980年,年,IntelIntel公司推出了公司推出了MCS-51MCS-51系列单片机:系列单片机:8 8位位CPUCPU、4K4K字节字节ROMROM、128128字节字节RAMRAM、4 4个个8 8位并口、位并口、1 1个全双工串行口、个全双工串行口、2 2个个1616位定时位定时/ /计数器。寻址范围计数器。寻址范围64K64K,并有控制功能较强的布尔处理器。,并有控制功能较强的布尔处理器。 特点是特点是:
17、结构体系完善,性能已大大提高,面结构体系完善,性能已大大提高,面向控制的特点进一步突出。现在,向控制的特点进一步突出。现在,MCS-51MCS-51已成为公已成为公认的单片机经典机种认的单片机经典机种 。 1.2 1.2 单片机概述单片机概述24 特点是:片内面向测控系统外围电路增强,使单特点是:片内面向测控系统外围电路增强,使单片机可以方便灵活地用于复杂的自动测控系统及设片机可以方便灵活地用于复杂的自动测控系统及设备。备。“微控制器微控制器”的称谓更能反应单片机的本质的称谓更能反应单片机的本质。 19821982年,年,IntelIntel推出推出MCS-96MCS-96系列单片机。系列单片
18、机。芯片内集成:芯片内集成:1616位位CPUCPU; ; 8K8K字节字节ROMROM; ; 232232字节字节RAMRAM; ; 5 5个个8 8位并口位并口; ; 1 1个全双工串行口个全双工串行口; ; 2 2个个1616位定时位定时/ /计数器计数器; ; 8 8路路1010位位ADCADC; ; 1 1路路PWMPWM输出输出 等等1.2 1.2 单片机概述单片机概述251.2.2 1.2.2 单片机产品近况单片机产品近况 ATMELATMEL公司融入公司融入FlashFlash存储器技术的存储器技术的AT89AT89系列;系列; PhilipsPhilips公司的公司的80C5
19、180C51、80C55280C552系列;系列; 华邦公司的华邦公司的W78C51W78C51、W77C51W77C51高速低价高速低价系列;系列; ADIADI公司的公司的ADC8xxADC8xx高精度高精度ADCADC系列;系列; LGLG公司的公司的GMS90/97GMS90/97低压高速低压高速系列;系列; MaximMaxim公司的公司的DS89C420DS89C420高速(高速(50MIPS50MIPS)系列;系列; CygnalCygnal公司的公司的C8051FC8051F系列高速系列高速SOCSOC单片机。单片机。 80518051系列单片机产品繁多,主流地位已经形成,系列
20、单片机产品繁多,主流地位已经形成,近年来推出的近年来推出的与与80518051兼容兼容的主要产品有:的主要产品有:1.2 1.2 单片机概述单片机概述26 非非80518051结构结构单片机新品不断推出,给用户提供单片机新品不断推出,给用户提供了更为广泛的选择空间了更为广泛的选择空间 ,主要产品有:,主要产品有: MicrochipMicrochip公司公司 RISCRISC单片机单片机 ; PICPIC系列单片机(系列单片机(8 8位机)位机)TITI公司公司低功耗低功耗单片机;单片机; MSP430FMSP430F系列单片机(系列单片机(1616位机);位机); * * TITI公司公司数
21、字信号处理器数字信号处理器(单片)(单片) DSPDSP(3232位);位); * * ARMARM公司公司 高集成单片机系列高集成单片机系列1.2 1.2 单片机概述单片机概述271.3 1.3 单片机的特点及应用领域单片机的特点及应用领域 5151系列单片机的特点系列单片机的特点 近期推出的单片机产品,内部集成有高速近期推出的单片机产品,内部集成有高速I/OI/O口、口、ADCADC、PWMPWM、WDTWDT等部件,并在低电压、低功耗、串行扩展总线、控等部件,并在低电压、低功耗、串行扩展总线、控制网络总线和开发方式等方面都有了进一步的增强。制网络总线和开发方式等方面都有了进一步的增强。
22、控制性能好、可靠性高控制性能好、可靠性高 实时控制性能强:实时控制性能强:其其CPUCPU可以对可以对I/OI/O端口直接进行操作,端口直接进行操作,位操作能力更是其它计算机无法比拟的。位操作能力更是其它计算机无法比拟的。 可靠性高:可靠性高:由于由于CPUCPU、存储器及、存储器及I/OI/O接口集成在同一芯片接口集成在同一芯片内,各部件间的连接紧凑,数据在传送时受干扰的影响较小,内,各部件间的连接紧凑,数据在传送时受干扰的影响较小,且不易受环境条件的影响。且不易受环境条件的影响。28体积小、价格低、易于产品化体积小、价格低、易于产品化 单片机芯片即是一台完整的微型计算机,对单片机芯片即是一
23、台完整的微型计算机,对专用场合,可以专门进行芯片设计,使芯片的功专用场合,可以专门进行芯片设计,使芯片的功能与应用具有良好的对应关系;在单片机产品的能与应用具有良好的对应关系;在单片机产品的引脚封装方面,有的单片机引脚已减少到引脚封装方面,有的单片机引脚已减少到8 8个或个或更少。更少。从而使应用系统的从而使应用系统的PCBPCB板减小、接插件减少、板减小、接插件减少、安装简单方便。安装简单方便。1.3 1.3 单片机的特点及应用领域单片机的特点及应用领域29单片机的应用领域单片机的应用领域 智能仪器仪表智能仪器仪表 单片机用于各种仪器仪表,一方面提高单片机用于各种仪器仪表,一方面提高了仪器仪
24、表的使用功能和精度,使仪器仪表了仪器仪表的使用功能和精度,使仪器仪表智能化,同时还简化了仪器仪表的硬件结构,智能化,同时还简化了仪器仪表的硬件结构,从而可以方便地完成仪器仪表产品的升级换从而可以方便地完成仪器仪表产品的升级换代。如智能代。如智能电气测量仪表电气测量仪表、智能传感器等。、智能传感器等。1.3 1.3 单片机的特点及应用领域单片机的特点及应用领域30机电一体化产品机电一体化产品 机电一体化产品是集机械技术、微电机电一体化产品是集机械技术、微电子技术、自动化技术和计算机技术于一体,子技术、自动化技术和计算机技术于一体,具有智能化特征的各种机电产品。单片机具有智能化特征的各种机电产品。
25、单片机在机电一体化产品的开发中可以发挥巨大在机电一体化产品的开发中可以发挥巨大的作用。典型产品如(足球)的作用。典型产品如(足球)机器人机器人、数、数控机床、自动包装机、验钞机、医疗设备、控机床、自动包装机、验钞机、医疗设备、打印机、传真机、复印机等。打印机、传真机、复印机等。1.3 1.3 单片机的特点及应用领域单片机的特点及应用领域31工业实时控制工业实时控制单片机还可以用于各种物理量的采集与控单片机还可以用于各种物理量的采集与控制。如制。如电流、电压、温度、液位、流量电流、电压、温度、液位、流量等。等。在这类系统中,利用单片机作为系统控制器,在这类系统中,利用单片机作为系统控制器,可以根
26、据被控对象的不同特征采用不同的智可以根据被控对象的不同特征采用不同的智能算法,实现期望的控制指标,从而提高生能算法,实现期望的控制指标,从而提高生产效率和产品质量。典型应用如电机转速控产效率和产品质量。典型应用如电机转速控制、温度控制、制、温度控制、自动生产线自动生产线等等 。1.3 1.3 单片机的特点及应用领域单片机的特点及应用领域32分布式系统的前端模块分布式系统的前端模块 在较复杂的工业系统中,经常要采用分在较复杂的工业系统中,经常要采用分布式测控系统完成大量的分布参数的采集。布式测控系统完成大量的分布参数的采集。在这类系统中,采用单片机作为分布式系统在这类系统中,采用单片机作为分布式
27、系统的前端采集模块,系统具有的前端采集模块,系统具有运行可靠,数据运行可靠,数据采集方便灵活,成本低廉采集方便灵活,成本低廉等一系列优点等一系列优点。1.3 1.3 单片机的特点及应用领域单片机的特点及应用领域33家用电器家用电器 家用电器是单片机的又一重要应用领域,家用电器是单片机的又一重要应用领域,前景十分广阔。如空调器、电冰箱、洗衣机、电前景十分广阔。如空调器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具等。饭煲、高档洗浴设备、高档玩具等。 另外,在另外,在交通领域交通领域中,汽车、火车、飞机、中,汽车、火车、飞机、航天器等均有单片机的广泛应用。如汽车自动驾航天器等均有单片机的广泛应用
28、。如汽车自动驾驶系统、航天测控系统、黑匣子等驶系统、航天测控系统、黑匣子等 。1.3 1.3 单片机的特点及应用领域单片机的特点及应用领域341.4 1.4 单片机应用系统开发简介单片机应用系统开发简介 单片机应用系统的开发单片机应用系统的开发 硬件设计硬件设计和和软件功能设计软件功能设计是一个实用的单片是一个实用的单片机应用系统两项任务。完成这一任务的过程称为机应用系统两项任务。完成这一任务的过程称为单片机应用系统的开发。单片机应用系统的开发。 单片机作为一片集成了微型计算机基本部件单片机作为一片集成了微型计算机基本部件的集成电路芯片,与通用微机相比,它自身没有的集成电路芯片,与通用微机相比
29、,它自身没有开发功能,必须借助开发功能,必须借助开发机开发机(一种特殊的计算机(一种特殊的计算机系统)来完成如下任务:系统)来完成如下任务: 排除排除应用系统的应用系统的硬件故障硬件故障和和软件错误软件错误; 程序固化程序固化到内部或外部程序存储器芯片中。到内部或外部程序存储器芯片中。 35单片机应用系统传统开发方式单片机应用系统传统开发方式 有三种方式:仿真器、串行下载、串行调试。有三种方式:仿真器、串行下载、串行调试。 利用仿真器开发(利用仿真器开发(仿真器仿真器)USB1.4 1.4 单片机应用系统开发简介单片机应用系统开发简介36 SST SST公司推出的公司推出的SuperFLASH
30、SuperFLASH存储器,利用这存储器,利用这种存储器可以进行高速读写的特点,能够实现在种存储器可以进行高速读写的特点,能够实现在系统编程(系统编程(ISPISP)和在应用编程()和在应用编程(IAPIAP)功能。)功能。首先在首先在PCPC机上完成应用程序的编辑、汇编机上完成应用程序的编辑、汇编(或编译)、模拟运行,然后实现目标程序的串(或编译)、模拟运行,然后实现目标程序的串行下载。行下载。1.4 1.4 单片机应用系统开发简介单片机应用系统开发简介37串行下载串行调试串行调试 MicrochipMicrochip公司推出的公司推出的RISCRISC结构结构 单片机单片机PIC16F87
31、XPIC16F87X中内置有中内置有 在线调试器在线调试器ICDICD(In-Circuit ProgrammingIn-Circuit Programming)功能;)功能; 配置具有配置具有ICSPICSP(In-CircuitIn-Circuit Serial ProgrammingSerial Programming)功能)功能 的简单仿真器和烧写;的简单仿真器和烧写; 通过通过PCPC机串行电缆机串行电缆 就可完成对目标系统的仿真调试就可完成对目标系统的仿真调试 。1.4 1.4 单片机应用系统开发简介单片机应用系统开发简介381.51.5 计算机运算基础计算机运算基础二进制二进制N
32、B两个数码:两个数码:0、1, 逢二进一逢二进一例例 1101.101B=123+122+021+120 +12-1+12-3 加权展开式以加权展开式以2为基数,各位系数为为基数,各位系数为0、1一般表达式:一般表达式: NB = bn-12n-1 + bn-22n-2 +b020 +b-12-1+一、一、 进位计数制进位计数制39十六进制十六进制NH1.5 计算机运算基础计算机运算基础40一一. 十进制十进制N ND D有十个数码有十个数码0 09 9、逢十进一、逢十进一 十进制用于计算机输入输出,人机交互十进制用于计算机输入输出,人机交互进位计数制小结:进位计数制小结:二二. 两个数码两个
33、数码:0:0、1, 1, 逢二进一逢二进一 二进制为机器中的数据形式二进制为机器中的数据形式三三. 个数码个数码:0:09,A9,AF,F,逢十六进一逢十六进一 十六进制用于表示二进制数十六进制用于表示二进制数 不同进位制数以下标或后缀区别不同进位制数以下标或后缀区别, ,十进制数可不带十进制数可不带下标,如下标,如:101:101、101101D D、101101B B、101101H H1.51.5 计算机运算基础计算机运算基础表1-2-1 不同进位记数制对照表十进制二进制十六进制十进制二进制十六进制000000810008100011910019200102101010A30011311
34、1011B401004121100C501015131101D601106141110E701117151111F41二、不同进位计数制之间的转换二、不同进位计数制之间的转换先展开,然后按照十进制运算法则求和。举例先展开,然后按照十进制运算法则求和。举例:十六进制数转换成十进制数十六进制数转换成十进制数 进位计数制的一般表达式:进位计数制的一般表达式:Nr=an-1rn-1+an-2rn-2+ +a1r1a0r0a-1r-1a-mr-m将将 r1进制的数转换成进制的数转换成 r2进制的数:进制的数:先展开,然后按先展开,然后按r2进制的运算法则求和计算进制的运算法则求和计算DFC.8H=131
35、62+15161+12160+816-1 = 3580.51011.1010B=123+121+120+12-1+12-3=11.6251-5 计算机运算基础计算机运算基础42十进制数转换成二、十六进制数十进制数转换成二、十六进制数1.整数转换法整数转换法“除基取余除基取余” 从低位排向高位。举例:从低位排向高位。举例:(1) 39转换成二进制数转换成二进制数39 = 100111B 2 39 1 ( b0) 2 19 1 ( b1) 2 9 1 ( b2) 2 4 0 ( b3) 2 2 0 ( b4) 2 1 1 ( b5) 0 (2) 208转换成十六进制转换成十六进制数数 208 =D
36、0H16 208 余余 016 13 余余 13 = DH 01.5 计算机运算基础计算机运算基础432.小数转换法小数转换法:“乘基取整乘基取整”:从最高位排到最低:从最高位排到最低位。举例位。举例0.625转换成二进制数转换成二进制数 0.625 2 1.25 1 (b-1)0.25 2 0.5 0 (b-2) 2 1.0 1 (b-3) 0.625 = 0.101B1.5 计算机运算基础计算机运算基础44二进制与十六进制数之间的转换二进制与十六进制数之间的转换 3AF.2H = 0011 1010 1111.0010 = 1110101111.001B 3 A F 2 10111000.
37、0101B = 1011 1000. 0101= 1111101.11B = 0111 1101.1100 = 7D.CH 7 D CB8.5H ,四位二进制数对应一位十六进制数。举例:1.5 计算机运算基础计算机运算基础45三、三、 有符号数的表示方法有符号数的表示方法机器数:机器中数的表示形式机器数:机器中数的表示形式真值:真值: 机器数所代表的实际数值机器数所代表的实际数值(一)机器数与真值(一)机器数与真值 举例举例: :一个一个8 8位机器数与它的真值对应关系如下:位机器数与它的真值对应关系如下: 真值:真值:X1= +84= +1010100X1= +84= +1010100B B
38、 X2= -84=X2= -84= -1010100-1010100B B 机器数:机器数: X1X1机机= 01010100 X2= 01010100 X2机机= 11010100= 11010100 机器中,数的符号用机器中,数的符号用“0 0”、“1 1” 表示。表示。 最高位作符号位,最高位作符号位,“0 0”表示表示“+ +”, ,“1 1”表示表示“- -”1.5 计算机运算基础计算机运算基础46最高位为符号位,最高位为符号位,0 0表示表示 “+ +”,1 1表示表示“”数值位与真值数值位相同数值位与真值数值位相同例例 8位原码机器数:位原码机器数: 真值:真值:x1 = +10
39、10100B x2 = 1010100B 机器数:机器数:x1原原 = 01010100 x2原原 = 11010100原码表示简单直观原码表示简单直观, ,但但 0 0的表示不唯一,加减运算复杂。的表示不唯一,加减运算复杂。有符号数三种表示方法:有符号数三种表示方法:(二二)原码原码 (True Form)1.5 计算机运算基础计算机运算基础47正数的反码与原码表示相同正数的反码与原码表示相同 负数反码符号位为负数反码符号位为 1 1,数值位为原码数值各位取,数值位为原码数值各位取反反(三)反码(三)反码(Ones Complement) x= -4 x= -4 :xx原原= 1000010
40、0 = 10000100 x x反反= 11111011= 11111011例例 求求 8位原码机器数位原码机器数: x= +4 x= +4 : xx原原= 00000100= 00000100 x x反反= 00000100= 000001001.5 计算机运算基础计算机运算基础48(四)补码(四)补码(Twos Complement)正数的补码表示与原码相同正数的补码表示与原码相同 负数补码的符号位为负数补码的符号位为1 1,数值位等于反码加,数值位等于反码加1 1例:求例:求 8位补码机器数:位补码机器数:x=+4x=+4:xx原原=x=x反反=x=x补补= 00000100= 0000
41、0100 x=-4 x=-4:xx原原 = 10000100= 10000100 xx反反 = 11111011= 11111011xx补补 = 11111100= 11111100 补码表示的优点:补码表示的优点:0 0的表示唯一,加减运算方便,用加法代替减的表示唯一,加减运算方便,用加法代替减法法1.5 计算机运算基础计算机运算基础498 8位机器数表示的真值位机器数表示的真值8 位机器数位机器数有符号数有符号数十六进制十六进制二进制二进制无符号数无符号数原码原码反码反码补码补码00017F80FEFF00000000000000010111111110000000111111101111
42、111101127128254255+0+1+127- 0-126-127+0+1+127- 127- 1- 0+0+1+127-128- 2- 11.5 计算机运算基础计算机运算基础50四四. . 机器数与真值之间的转换机器数与真值之间的转换 1)X1= +1271)X1= +127,X2= -127X2= -127,求,求XX原原 、XX补补 X1 X1原原=X1=X1补补= 01111111=7FH= 01111111=7FH X2 X2原原= 11111111=FFH= 11111111=FFH X2 X2补补= 10000001=81H = 10000001=81H 1. 1. 真值
43、真值机器数机器数 2)2)X1= +255X1= +255,X2= -255 X2= -255 ,求,求XX原原 、XX补补 X1X1原原=X1=X1补补= 0000000011111111=00FFH= 0000000011111111=00FFH X2 X2原原= 1000000011111111=80FFH= 1000000011111111=80FFH X2 X2补补= 1111111100000001=FF01H= 1111111100000001=FF01H1.5 计算机运算基础计算机运算基础51 1) 1) X1X1原原= 59H= 59H,X2X2原原= D9H= D9H,求真
44、值?,求真值? X1X1原原= 01011001= 01011001 X1 X1原原=11011001=110110012. 2. 机器数机器数真值真值 注意机器数表示(原码、补码)注意机器数表示(原码、补码) 注意机器数符号位注意机器数符号位 X1= +X1= +10110011011001B B=+89D X2=-1011001=+89D X2=-1011001B B=-89D=-89D 2) 2) X1X1补补= 59H = 59H , X2X2补补= D9H= D9H,求真值,求真值 X1=+1011001X1=+1011001B B=+89D X2=-0100111=+89D X2=
45、-0100111B B=-39D=-39D1.5 计算机运算基础计算机运算基础52六、六、 二二十进制编码十进制编码(BCD(BCD码码) )例:求十进制数例:求十进制数876876的的BCDBCD码码876876BCD BCD = 1000 0111 0110 = 1000 0111 0110 876 = 36C876 = 36CH H = 1101101100= 1101101100B BBCD码码( (Binary Coded Decimal)Binary Coded Decimal)二进制代码表示的十进制数二进制代码表示的十进制数( (一)一)8421 8421 BCD码码1.5 计算
46、机运算基础计算机运算基础53 BCD码运算:先按二进制法则计算,再进行十进制调整。码运算:先按二进制法则计算,再进行十进制调整。十进制调整:当计算结果有非十进制调整:当计算结果有非BCD码或产生进位码或产生进位/ /借位时,借位时,进行进行 +6 +6 或或 -6 -6 调整运算调整运算例:计算例:计算BCD码码 78+69=78+69=? 0111 10000111 1000 78 78BCDBCD + 0110 1001+ 0110 1001 + 69+ 69BCDBCD 1110 0001 1110 0001 产生非产生非BCDBCD码和半进位码和半进位 + 0110 0110 + 01
47、10 0110 + 66H + 66H调整调整1 0100 0111 1 0100 0111 带进位结果:带进位结果:147 147 1.5 计算机运算基础计算机运算基础(二)(二) BCD码运算码运算54七、字符编码七、字符编码 美国标准信息交换码美国标准信息交换码ASCIIASCII码,用于计算机与码,用于计算机与计算机、计算机与外设之间传递信息计算机、计算机与外设之间传递信息行行列列0 0 00 0 10 1 00 111 0 01 0 111 01110 0 0 0N U LD L ES P0P、p0 0 0 1S O HD C 1!1AQaq0 0 1 0S T XD C 2”2BR
48、br0 0 11E T XD C 3#3CScs0 1 0 0E O TD C 4$4DTdt0 1 0 1E N QN A K%5EUeu0 11 0A C KS Y N&6FVfv0 111B E LE T B 7GWgw1 0 0 0B SC A N(8HXhx1 0 0 1H TE M )9IYiy1 0 1 0L FS U B*:JZjz1 0 11V TE S C+ ;Kk11 0 0F FF S ,Ll 11 0 1C RG S=Mm111 0S OR SNn1111S IU S/ ?O_oD E L1.5 计算机运算基础计算机运算基础5556课程设计设计实现一个具有实用功能的小系统设计实现一个具有实用功能的小系统 可选做,可自定可选做,可自定 自行设计,一人一组自行设计,一人一组 网上报名网上报名