




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2020/9/10,1,单片微机原理及应用,2020/9/10,2,教 材,严海蓉,薛涛等,嵌入式微处理器原理与应用-基于ARM Cortex-M3微控制器(STM32系列),清华大学出版社,2014年12月 第1版。 参考书目: 1吴常玉,曹孟娟,王丽红.ARM Cortex-M3与Cortex-M4权威指南(第3版),清华大学出版社,2015 2武奇生,白璘等,基于ARM的单片机应用及实践-STM32案例式教学,机械工业出版社,2014年6月第1版 3喻金钱,喻斌,STM32F系列ARM Cortex-M3核微控制器开发与应用,清华大学出版社,2011 4杨光祥,梁华,朱军,STM32单片
2、机原理与工程实践(第1版),武汉理工大学出版社,2013,2020/9/10,3,课程目的和基本要求,本课程要求学生掌握计算机中的数值概念,包括各类数据编码与存储方式;通过学习微型计算机的基本原理和组成结构,使学生掌握微型计算机的工作原理,对计算机建立从软件到硬件、从宏观到微观的正确认知;了解ARM系列处理器内核的发展历程和技术特点;通过课程学习,掌握Cortex-M3的体系结构,了解其先进技术及对性能的影响,掌握其操作模式、寄存器内容及功能。深入掌握STM32F10X单片机的内部结构、核心技术、功能部件、内部资源以及编程方法,掌握其接口技术;通过应用实例的讲解与讨论,让学生进一步巩固所学知识
3、,提高分析和设计技能,并促进综合素质的培养。,课程主要内容,(1)讲解微型计算机的基本原理、组成结构、先进技术,各类进制数的转换方法、定点数与浮点数的存储格式、无符号数和带符号数的编码方法、ASCII码、BCD码、汉字编码的基本技术。 (2)ARM家族介绍,讲解微型计算机的基本原理与组成结构,学习单片微型计算机发展,简要介绍嵌入式系统基本概念、Cortex-M3内核的技术基础和功能特性。 (3)讲解Cortex-M3体系结构,包括微处理器核结构、处理器的操作模式及状态。讲授Cortex-M3的寄存器、总线矩阵和系统地址映射方法。 (4)讲解STM32F10X的电源、时钟及复位电路,包括电源电路
4、、时钟树结构、复位电路和启动设置。 (5)讲解STM32F10X的最小系统与开发环境。主要内容包括:STM32F10X最小系统运行条件、STM32F10X最小系统设计规范、STM32F10X程序下载的几种方法,以实例为基础介绍STM32开发的基本要求和编程技能。 (6)讲解STM32F10X的功能部件与内部资源,主要内容包括:电源控制、实时时钟RTC、GPIO、中断和事件、高级定时控制器TIM1、通用定时控制器TIMx、USART收发器、模拟数字转换ADC等。 (7)应用实例:讲述基于STM32的工程设计实例,以交通灯控制等内容为基础,针对设计要求讲解应用需求分析、硬件构成,软件设计方法等。,
5、2020/9/10,4,2020/9/10,5,成绩评定,开卷考试(带教材与手写笔记) 笔 试(60)+ 平时成绩(10)+ 上机考试(20)+ 实验报告(10),2020/9/10,6,引 言,问题引入 假设要设计一个电力监测的信息采集与传输终端,实现以下功能: (1)多种信号的数据采集 (2)数据效验,帧结构制定 (3)数据本地存储 (4)液晶(LCD)屏显示相关信息 (5)通过3G/GPRS网络与后台主机通信 (6)按键实现人机交互,引 言,2020/9/10,7,2020/9/10,8,第1章微型计算机基础,1计算机发展历程 2微型计算机结构、总线、计算机工作原理 3计算机中的编码及运
6、算基础,2020/9/10,9,1 计算机发展历程,1计算机发展历程,1.1 计算机的发展,第一代计算机是电子管计算机。,计算机发展史1946年2月宾夕法尼亚大学的莫奇利和艾克特研制成功世界上第一台计算机电子数字积分计算机ENIAC。ENIAC预示着科学家将从奴隶般的计算中解脱出来。但是ENIACA存在两大缺点: 一、没有严格意义上的存储器; 二、用布线接板进行控制。,1945年3月,冯诺伊曼起草了一份关于“离散变量自动电子算机EDVAC的设计报告,对ENIAC作了两项重大的改进:,一是在计算机内采用二进制,大大简化了计算机的结构和运算过程;,二是把程序和数据一起存贮在计算机内,使得计算机的全
7、部运算成为真正的自动过程。,1956年,美国贝尔实验室用晶体管代替真空管,制成了世界上第一台全晶体管计算机(数值计算和处理)。,第二代计算机是晶体管计算机。,第三代计算机是中小规模集成电路计算机(60-70年代BASIC,开始处理图像、文字)。,第四代计算机是大规模集成电路计算机。,第五代计算机是人工智能计算机。,这一代的核心设计思想是突破冯诺伊曼体系结构。遗憾的是,迄今为止,还没有出现一台真正意义上的第五代计算机。,1.2 微机的发展与分类,1. 微机的分类,(1)按结构分可以把微机分成单片机和多片机,单片机是把中央处理器、随机存取存储器、只读存储器、输入/输出端口等主要计算机功能部件都集成
8、在一块集成电路芯片上的微型计算机。,多片机是指将中央处理器、随机存取存储器、只读存储器、输入/输出端口、总线等主要计算机功能部件,采用微焊接、封装等工艺分别用一块芯片集成,然后再组装起来的微型计算机。,(2)按组装方式可以把微机分为单板机和多板机,单板机是指将计算机的各个部分都组装在一块印制电路板上,包括微处理器、存储器、输入输出接口,还有简单的七段发光二极管显示器、小键盘、插座等其他外部设备。,多板机是指将CPU、存储器、I/O接口电路和总线接口等组装在一块主机板(即微机主板)上,再通过系统总线和其它多块外设适配板卡连接键盘、显示器、打印机、软/硬盘驱动器及光驱等设备。,(3)按外形可以把微
9、机分为台式机、笔记本,(4)按CPU的数据总线位数分,把微机分为4位机、8位机、16位机、32位机、64位机等。,2. 微机的发展,(1)第一代:4位及低档8位微处理器,(2)第二代:中、高档8位微处理器,(3)第三代:16位微处理器,(4)第四代:32位微处理器,(5)第五代:高档32位微处理器,(6)第六代:64位微处理器,1.3 单片机发展史 单片机发展史1958年,TI公司的杰克基尔比发明了第一块集成电路; 1961年,TI公司研发出第一个基于IC的计算机; 1965年,高登摩尔提出了描述集成电路工业发展规律的摩尔定律; 同年,中国第一块集成电路诞生; 1968年,Intel公司诞生,
10、推出第一片1K字节的RAM; 1981年,Intel公司推出了8位微控制器8051。,单片机的发展趋势走向集成、嵌入式 嵌入式系统的发展主要来源于两大动力,即社会需求的拉动和先进技术的推动,需求提供了市场,带动了新技术的产生,刺激了新技术的推广。 嵌入式系统的发展动力示意图,1.4 微型计算机基本组成,2020/9/10,20,2 微型计算机基本原理,2020/9/10,21, 2微型计算机基本原理,计算机结构,2020/9/10,22,1. 微型计算机结构 在大规模集成电路技术的支撑下,计算机可做到体积小,重量轻,使用方便,功能完备,形成微型计算机。,2020/9/10,23,1. CPU
11、(中央处理单元 微处理器) CPU是微型计算机的核心,它包含: ALU:对输入CPU的数据进行运算(算术及逻辑运算) 控制器:完成同步定时(时钟电路)及产生控制信号(控制电路) 工作寄存器:存放操作数及中间结果,2020/9/10,24,2. 存储器 memory 完成记忆功能,用于存储数据,由多个存储单元构成。 存储单元:具有特定地址的存储单位,存储信息分为若干二进制位,8位机为8位(bit),即1byte,16位机为16位,即1个字(word)。 地址:访问某存储单元的特定位置编号(例如,要在教室找某一个人,要知道他在几排第几位),地址由二进制码构成,二进制位数决定了单元多少。,2020/
12、9/10,25,存储容量:存储容量与地址位数相关 8位地址 28 为256个存储单元 16位地址 216 为64K 32位地址 232 为4G 存储器读:CPU从存储器中取数据的过程,读数据不影响原存储单元内容。 存储器写:CPU将数码写入存储器的过程,写入的新数据取代原数据。,字长:,计算机所用二进制代码的位数称为该计算机的字长,8位,字节,byte,16位,字,word,32位,双字,double word,3存储器的字长及寻址能力,寻址能力:,寻址能力指CPU对存储器访问的空间的大小,,它取决于地址总线的宽度。,10位,1024,1K,20位,1024K,1M,30位,1024M,1G,
13、40位,1024G,1P,50位,1024P,1T,60位,1024T,1E,MCS-51:,16位,64K,STM-32:,32位,4G,3 存储器工作原理,以一个256单元的存储器为例,存储器原理结构图,每个单元用两位16进制数编号,,称为单元地址:,如:00、01、02、03、FFH等,每个单元存放8位二进制信息,,即:数码内容。,每个单元的地址编码,与该地址单元中存放的内容,两者为不同概念,不容混淆。,必须注意:,AB,(ABUS),地址总线(此例8-bit);,(DBUS),数据总线(8-bit)。,存储器工作过程:,控制器控制下:,AB产生地址,(此例8位二进制数码),,经地址译码
14、器产生某一(也是唯一)单元的选通信号,,然后既可对这个单元的信息内容进行读取或写入修改操作。,DB,存储器读操作示意图,存储器读操作:,以读取04单元为例,,控制器送出地址04到AB,,经地址译码器选中04单元,,使其内容84H放到DB上,,CPU再控制将其读入并作相应处理。,读操作数码类型,1、程序指令;,2;原始数码;,(ROM),3、运算处理过程中间结果。,(RAM),3 存储器工作原理,以一个256单元的存储器为例,存储器原理结构图,每个单元用两位16进制数编号,,称为单元地址:,如:00、01、02、03、FFH等,每个单元存放8位二进制信息,,即:数码内容。,每个单元的地址编码,与
15、该地址单元中存放的内容,两者为不同概念,不容混淆。,必须注意:,存储器工作过程:,控制器控制下:,AB产生地址,(此例8位二进制数码),,经地址译码器产生某一(也是唯一)单元的选通信号,,然后既可对这个单元的信息内容进行读取或写入修改操作。,存储器写操作示意图,AB,(ABUS),地址总线(此例8-bit);,(DBUS),数据总线(8-bit)。,DB,存储器写操作:,以向10H单元写入数码26H为例,,控制器送出地址10H到AB,,经地址译码器选中10H单元,,同时控制CPU把数码26H放在DB,,再控制将该数码写入10H内。,数码信息写入后,没新信息写入前,一直保留不变;,存储器读出是非
16、破坏性的。,(输出),(双向),系统总线(System Bus),尽管各种微机的总线类型和标准有所不同,但是大体上都包含三种不同功能的总线,这就是数据总线DB(Data Bus)、地址总线AB(Address Bus)和控制总线CB(Control Bus)。,输入/输出设备(I/O设备即外围设备)及其接口电路,输入设备是将程序、数据、信息和询问信号送给微机的一类设备。,输出设备是将微机的计算和处理结果或回答信号以各种形式表现出来的一类设备。,输入/输出接口电路,输入/输出接口电路是CPU和I/O设备打交道的必经之路,具有协调和转换功能,通常又简称为接口。,4. 微型计算机其他重要部分,5 机
17、器语言 汇编语言与高级语言,机器指令 机器指令是指能被CPU识别和执行的一个二进制位串形式的指令。 机器语言程序 机器语言是计算机能够识别和执行的唯一语言。机器语言程序由一条一条的机器指令组成的程序。 汇编指令 二进制位串形式的机器指令不便于使用和记忆,人们用几个英文字符构成的助记符来表示的机器指令,就是所谓的汇编指令,或者称为符号指令。 汇编指令和机器指令基本上是一一对应的。,汇编语言源程序 是指程序员使用汇编指令(符号指令)编写的源程序。 汇编程序 是一种系统程序,能够将汇编语言程序(源程序)编译成CPU能够识别并执行的目标指令(二进制)代码的程序。 目标程序 汇编程序编译源程序而得的二进
18、制机器指令程序。 汇编 汇编程序将汇编语言源程序编译成目标程序的过程称为汇编过程,简称汇编。,汇编原理:两次扫描 机器指令操作代码表;伪指令操作表;符号表。 第一次扫描:主要完成符号表的建立; 第二次扫描:将程序转换为机器指令代码或数据等。,汇编语言程序设计的特点 1.指令与机器硬件密切相关; 2.对语句的选择重要; 3.编写复杂程序时,不要直接编程,先画流程图; 4.使用实际的机器来调试。 汇编语言程序设计的步骤 与其他程序设计语言编程一样: 1.理解设计任务; 2.建立数学模型; 3.确定算法; 4.模块化程序设计。,汇编语言与高级语言的比较 1.高级语言的优点:容易学习和使用 2.高级语
19、言的缺点: 不能由CPU直接执行,必须通过编译和连接过程转换得到机器语言程序才能最终由CPU解释执行; 可执行程序的执行效率低(汇编语言执行效率高); 可执行程序的机器指令代码不如汇编程序精炼(但高级语言的源代码比较简单);,2020/9/10,35,3 计算机中数据表示与存储,2020/9/10,36,3.1 位置计数制 3.2 负数在计算机中的编码 3.3 实数在计算机中的表示 3.4 十进数的编码 3.5 字符的编码 3.6 模拟信号编码的一般过程 3.7 数据压缩,3 计算机中数据表示与存储,2020/9/10,37,各种数据在计算机中如何表示,计算机的基本功能是对数据进行计算和处理加
20、工。冯诺依曼体系结构的基础是二进制,计算机中只能直接处理二值的数字数据。因此,现实世界的各种数据都要转换为二进制代码,才可以输入到计算机中进行存储和处理。按照一定规则,用二进制代码表示具体数据就称为编码。,2020/9/10,38,3.1 位置计数制,位置计数制是一种数的表示方法,特点是:同样的数字出现在数的不同位置,所代表的值是不同的。 位置计数制也称为进位计数制。每一位计满若干个数后就会进位。常用的进位计数制的数有十进制数、二进制数、八进制数和十六进制数。,2020/9/10,39,3.1 位置计数制,数的按权展开式 各种进位制的数 不同数制的转换 基本的二进制运算,2020/9/10,4
21、0,数的按权展开式,每一个进位计数制的数,都可以用按权展开式来表示,2020/9/10,41,各种进位制的数,2020/9/10,42,各种进位制的数(续),2020/9/10,43,不同数制的转换,其他进位制的数转换成十进制数 将其他进制的数写成按权展开式; 将按权展开式在十进制中进行计算,得到的结果就是等值的十进制数 。,2020/9/10,44,不同数制的转换其他进位制的数转换成十进制数,将十六进制数7AC.1B转换成十进制数,2020/9/10,45,十进制转换为其他进制整数部分,十进制整数转换为其他进制整数的方法是:除基取余,逆序读数。 将十进制数除以另一进制的基数,保留余数。 当上
22、一次的商不等于0时,将商再除以基数,保留余数。直到商等于0,除法停止。 后得到的余数,先读取;先得到的余数,后读取。这样排列的余数就是转换结果。,2020/9/10,46,十进制转换为其他进制整数部分,将十进制数28转换为二进制数。 解:二进制的基数是2,具体方法就是:除2取余,逆序读数。转换过程如下:,即:十进制数28的等值二进制数是(11100)2,2020/9/10,47,十进制转换为其他进制小数部分,十进制小数转换为其他进制小数的方法是:乘基取整,顺序读数。 将十进制小数乘以另一进制的基数,保留乘积的整数部分。 若乘积的小数部分不等于0,将小数再乘以另一进制的基数,保留乘积的整数。直到
23、乘积的小数部分等于0,或者转换后的精度已够时,乘法停止。 先得到的整数,先读取;后得到的整数,后读取。这样排列的整数部分就是转换结果。,2020/9/10,48,十进制转换为其他进制小数部分,将十进制小数0.125转换为二进制小数。 解:二进制的基数是2,具体方法就是:乘2取整,顺序读数。转换过程如下:,即:十进制小数0.125的等值二进制小数是(0.001)2,2020/9/10,49,二进制数和八进制数的转换,八进制转化为二进制 一个八进制数可以写为3位二进制数。只要将八进制数中的每一位转换为3位二进制数即可,首尾的0可以不写。 将八进制数315.26转换成二进制数。 解:,(315.26
24、)8=(011 001 101.010 110)2=(11001101.01011)2,2020/9/10,50,二进制数和八进制数的转换,二进制转化为八进制 从小数点开始,向左、右两边每3位二进制数分成一组,高位不足3位在高位补0,低位不足3位在低位补0。将每组二进制数写为等值的八进制数,即可完成转换。 将二进制数1011010111.1011转换成八进制数。 (高位补0) 001 011 010 111 . 101 100 (低位补0) 1 3 2 7 . 5 4,2020/9/10,51,二进制数和十六进制数的转换,十六进制转化为二进制 一个十六进制数可以写为4位二进制数。只要将十六进制
25、数中的每一位转换为4位二进制数即可,首尾的0可以不写。 将十六进制数3A5.2E转换成二进制数 解: (3A5.2E)16=(0011 1010 0101 . 0010 1110)2 =(1110100101.0010111)2,2020/9/10,52,二进制数和十六进制数的转换,二进制转化为十六进制 从小数点开始,向左、右两边每4位二进制数分成一组,高位不足4位在高位补0,低位不足4位在低位补0。将每组二进制数写为等值的十六进制数,即可完成转换。 将二进制数1011010111.101转换成十六进制数。 (高位补0) 0010 1101 0111 . 1010(低位补0) 2 D 7 .
26、A 即:(1011010111.101)2 = (2D7.A)16,2020/9/10,53,基本的二进制运算算术运算,2020/9/10,54,基本的二进制运算算术运算,计算:101.10 + 11.01 解: 1 0 1 . 1 0 + 1 1 . 0 1 1 0 0 0 . 1 1 结果是:101.10 + 11.01 = 1000.11,计算:101.10 * 10.1 1 0 1 . 1 0 * 1 0 . 1 1 0 . 1 1 0 0 0 0 . 0 0 1 0 1 1 . 0 1 1 0 1 . 1 1 0 结果是:101.10 * 10.1 = 1101.110,2020/9
27、/10,55,基本的二进制运算逻辑运算,2020/9/10,56,3.2 负数在计算机中的编码,原码 反码 补码 补码运算,码制:原码,对一个二进制数而言,若是最高位表示数的符号(0表示正数,1表示负数),其余各位表示数值本身,则称为原码。如: 原码 真值数 810 1010001 1010001 811 1010001 1010001 00 0000000 0000000 01 0000000 0000000 可以看到,在八位机器字长表示数据的计算机中,用原码表示81和81的原码的低七位是相同的。原码简单,与真值转换方便。,容易推导得出: 1原码00000001 1原码10000001 12
28、7原码01111111 127原码11111111 0原码00000000 0原码10000000 原码表示的整数范围是: (2n-11)(2n-11),其中n为机器字长。 则:8位二进制原码表示的整数范围是-127+127; 16位二进制原码表示的整数范围是-32767+32767 32位,码制:反码,正数的反码与其原码相同,最高位为0表示正数,其余位为数值位。 负数的反码是其对应的正数连同符号位取反求得。如: 原码 反码 810 1010001 01010001 811 1010001 10101110 00 0000000 00000000 01 0000000 11111111,容易推
29、导得出: 1反码00000001 1反码11111110 127反码01111111 127反码10000000 0反码00000000 0反码11111111 反码表示的整数范围与原码相同。 反码通常用作求补码过程中的中间形式。,码制:补码,正数的补码与其原码或者反码相同。 负数的补码为其反码在最低位加1。 原码 反码 补码 8101010001 01010001 01010001 8111010001 10101110 10101111 000000000 00000000 00000000 010000000 11111111 00000000,可以验证: 补码表示的整数范围是-2n-1
30、(2n-1-1),其中n为机器字长。 则: 8位二进制补码表示的整数范围是128127; 16位二进制补码表示的整数范围是3276832767 32位?,思考1,根据定义,完成以下问题: 1、已知一个真值数,如:33,求:原码、反码、补码; 2、已知一个原码为1110 0100 ,求真值; 3、已知一个反码为1110 0100 ,求真值; 4、已知一个补码为1110 0100 ,求真值。,补码加减运算规则,定点数的加减运算算法有原码、补码和反码三种。 当采用原码时,首先要判断参加的运算的两个操作数的符号,再根据操作的要求决定进行相加还是相减运算,最后还要根据两个操作数绝对值的大小决定结果的符号
31、。整个运算过程过于复杂。 采用反码时,无需考虑操作数的符号(符号位),直接按照二进制方式运算,但运算结果需要修正。,补码表示法运算的特点是:将符号位视为数据位直接参与运算、从而简化了加、减法的规则,并能使减法变成加法运算,从而简化了CPU的运算器硬件电路。 由于加减运算最为频繁,因此现代计算机中普遍使用补码作为有符号数的表示方式。,补码加减运算规则,补码加减法的规则是: X补+ Y补X + Y补 。 即: 公式1:X+Y补=X补+Y补。 公式2:XY补=X+(Y)补=X补+Y补 (条件:X、Y、X+Y、X-Y都在字长的合法表示范围之内。),补码的加减运算规则: 参加运算的两个操作数均用补码表示
32、; 符号位不再单独处理、视为数的一部分参加运算; 求差时将减数求补,用求和代替求差; 运算结果为补码; 最高位(符号位)的进位为模值,对结果无意义:丢弃!(实际上被存放在CPU的进位标志位触发器CF里面。),注意:当运算结果超出字长能够表示的合法范围时,结果就不再正确。此时称为溢出。 为了让程序员获知有符号数运算过程中的溢出信息,CPU提供了一个专门的硬件触发器:溢出标志位OF。 一旦出现溢出,程序员必须作出相应的正确处理。,例:以28 为模,设X补0000 0100(真值为4),Y 补1111 0010 (真值为14) ,求X+Y 补和XY 补。 解: XY补X 补Y 补 0000 0100
33、+1111 0010=0 1111 0110(-10的补码) XY补X 补Y 补 0000 0100+0000 11100 0001 0010(18的补码),补充:例: (1) 假设X=66, Y=51,机器字长n=8,求X+Y及X-Y。 解:X=+100 0010, Y=+011 0011 X补 = 0100 0010, Y补= 0011 0011 -Y补 = 1100 1101 X+Y补 = X补+Y补 = 0100 0010 + 0011 0011 = 0 0111 0101 ,所以 X+Y = +111 0101 B = +117 X-Y补 = X补+-Y补 = 0100 0010 +
34、 1100 1101 = 1 0000 1111 = 0000 1111 (字长8位,进位丢弃!) 所以 X Y = +000 1111 B = +15,(2)假设X=66, Y=99,机器字长n=8, 求X+Y。 解:X=+100 0010, Y=+110 0011 X补= 0100 0010 Y补=0110 0011 X+Y补=X补+Y补=0100 0010 + 0110 0011 = 0 1010 0101 (显然,这是一个负数的补码) 因为:1010 0101 = -101 1011补=-91补 所以:X+Y = -91 显然,X=66为正,Y=99为正,两正数相加应该为正,但是得到负
35、数,故(X+Y )相加后的和超出表示范围-128,127,从而产生溢出。,(3)假设X= -66, Y= -99,机器字长n=8, 求X+Y 解:X= -100 0010, Y=-110 0011 X补=1011 1110 Y补=1001 1101 X+Y补=1011 1110 + 1001 1101 = 1 0101 1011 (字长8位,进位丢弃) = 0101 1011 (这是正数) 因为 0101 1011 = +101 1011补 = +91补 所以:X+Y = 91 显然,X=-66为负,Y=-99为负,负数相加应该为负数,但是得到正数,故相减后的差超出表示范围-128,127,从
36、而产生溢出。,2020/9/10,73,补码运算,例: 用补码加法计算:-61+(-33) -61=(10111101)原码=(11000011)补码 -33 = (10100001)原码 = (11011111)补码 也就是:(11000011)补码+(11011111)补码 = (10100010)补码 = (11011110)原码 = (-94)10,2020/9/10,74,补码运算,例: 用补码加法计算:65+70 65 = (01000001)补 70 = (01000110)补 求和结果,符号位为1。两个正数相加的和不可能是负数,说明结果产生了溢出。,2020/9/10,75,3
37、.3 实数在计算机中的表示,定点数 浮点数,2020/9/10,76,定点数,定点数是指小数点位置固定不变的数。 定点小数 小数点位置固定在数的开头,那么定点小数就是纯小数。 定点整数 小数点位置固定在数的末尾,那么定点数表示的是整数,2020/9/10,77,定点数八位定点数,定点小数,定点整数,2020/9/10,78,浮点数,浮点数通过阶码和尾数来表示,如下图,阶码和尾数都可正、可负,用阶符和尾符决定其正负。 浮点数N=2阶码 尾数,浮点数是小数点可以左右移动的数。 例如:45.3125 = +101101.0101 = +0.1011010101 2+6 = +1011010101 2
38、-4 即可以写成二进制格式:S2J 其中:+/-J为阶码(Exponenet),表示小数点位置;+/-S为尾数(Mantissa或者Significand)。,由于一个浮点数在机器中可以有多种表示,运算时不方便,故对其进行规格化,使得表示方法唯一。 浮点数的规格化(Normalized)定义:一个规格化的浮点数真值满足: (1)尾数为纯小数,且小数点后第一位为1; (2)阶码为整数。 例如: 45.3125 的规格化数为: +0.10110101012+6 而不是+0.010110101012+7 也不是+101.10101012+3,2020/9/10,82,浮点数,在尾数不变的情况下,阶码发生变化,小数点的位置就发生变化,所以称为“浮点数”。为了尽可能提高浮点数表示的精度,对于尾数要进行规格化。 IEEE754标准浮点数float和双精度数double。,例设字长为16位,阶符为1位,阶码为4位,尾符为1位,尾数为10位。要求把X=-101101.0101B写成规格化的浮点补码数,阶码和尾数均用补码表示。 解: 0 0110 1 0100101011 阶符 阶码 尾符 尾数 .,浮点数的数值范围和精度,浮点数的数值范围是指浮点机器数能表示的真值范围。 阶码位数用来确定浮点数的大小;尾数的位数用来确定浮点数的表示精度。 显然:在相同字长的条件下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能化翻译服务中的自然语言处理数据分析-洞察阐释
- 精准医学精准治疗-洞察及研究
- 智能家电与零售科技融合的未来趋势-洞察阐释
- 属性加密技术在电子政务中的应用与安全性分析-洞察阐释
- 基于大数据的干部休养所员工满意度提升策略-洞察阐释
- 肉桂叶精油抗菌纳米纳米材料研究-洞察阐释
- 关于安全生产的知识
- 燃气行业安全生产费用提取标准
- 安全生产知识看板
- 【中小学科学教育中调查类实践活动的案例设计9100字】
- 智慧农业项目建设方案
- 人工智能模拟题
- 2024年下半年江苏南通启东市部分事业单位选调工作人员14人易考易错模拟试题(共500题)试卷后附参考答案
- 教师资格考试小学美术面试试题及答案指导(2025年)
- 住家保姆合同协议书模板
- AI如何赋能艺术教育-笔记
- DB11T 485-2020 集中空调通风系统卫生管理规范
- 《人力资源管理》全套教学课件
- Unit 6 Craftsmanship Reading 教案-2023-2024学年中职英语高教版(2023修订版)基础模块2
- 2023-2024学年山东省菏泽市东明县八年级(下)期末数学试卷(含答案)
- 初高中物理衔接讲座(初高中物理对比)
评论
0/150
提交评论