单片机与嵌入式系统2A讲解.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机与嵌入式系统2A讲解

单片机与嵌入式系统 第二章 计算机的数值表示 “0”“1”信息的表示 为什么用“0”“1” 电子器件的两个稳定状态;冯·诺依曼 2.1 计算机的数字表示 计算机是以“0”“1”为基础的,采用二进制(binary)的作为现代计算机的运算方式,是由冯·诺依曼确立,并沿用至今的。 那么我们经常提到十进制(decimal) 、八进制(octonary) 、十六进制(hexadecimal)又是怎么回事呢? (1)进制计数制—即采用进位的计数方法。采用这种计数方法后人们可以用有限的符号来表示很大或很小的数了。在十进制中可以采用0到9这十个数字符号来表示更大的数了,当然结合小数点和负号理论上就可以表示实数中的任意数了。 (2)基数—某种进制计数制中所包含的数码个数就是该数制的基数(base),如二进制的基数是2,十进制的基数是1010,十六进制的基数是1610。 既然测量频率,那很自然就想到测量周期T,而后利用f=1/T就可以得到频率了。我们知道定时器/计数器是计算机的主要辅助功能器件,它可以用来测量时间T。定时器/计数器可以对内部晶振频率信号(或其分频)进行计数,计算机的晶振频率是固定的(周期也就固定),这就是定时器;或对外部频率信号进行计数,就是计数器。现在要测量信号的周期T,将测量到的信号处理成方波并输入到单片机的外部中断管脚(信号处理电路在后面章节给予介绍)。在发生中断时读出定时器计数值N(在信号的两次中断之间,定时器可能要溢出多次,可以将定时器中断次数一并计算到N中),测量信号的周期。 假设晶振频率为,定时器分频系数为P(prescaler),则定时器计数频率为:,计数周期,则欲测量的信号频率为: * * * 3)权(权重,weight)—表示进位计数制中各位数的单位值。权可以用基数幂的形式表示,如十进制1111.1111中,各个“1”具有不同的权重,从左至右分别是:103、102、101、100、10-1、10-2、10-3、10-4。如果1111.1111是二进制那么“1”的权重从左至右则分别是:23、22、21、20、2-1、2-2、2-3、2-4。 N进制的各位权重就是N的幂,(1111.1111)N从左至右的权重分别是:N3、N2、N1、N0、N-1、N-2、N-3、N-4。 2.2 不同进制间的转换 (1)十进制到N进制的转换 整数部分是除N直到被除数为0,保留每次的余数。小数部分是乘N,得到积的整数部分就是此位的转换值,去掉整数部分再乘N去转换下一位。小数可能会无限循环的 如:76521为十六进制 整数部分是76521 76521 ÷ 16 = 4782 ――9 第一位(小数点前一位) 4782 ÷ 16 = 298 ――14(十六进制的E) 第二位 298 ÷ 16 = 18 ――10(十六进制的A) 第三位 18 ÷ 16 = 1 ―― 2 第四位 1 ÷ 16 = 0 ―― 1 第五位 整数部分转换为十六进制是12AE9。 小数部分是0 0× 16 = 12.6875 ――整数部分12(十六进制的C) 小数点后第一位 0.6875 × 16 = 11 ――11(十六进制的B) 第二位 2.2 不同进制间的转换 (2)N进制到十进制的转换——按权转换 整数部分从最后一位开始算,依次列为第0、1、2...位,第n位的数乘以N的n次方得到的结果相加就是整数部分的结果;小数部分从小数点开始依次可以记为-1、-2、...位,到-m位,相应位上的数乘以对应位的权值即可。 例如(1001.11)2 = 1*23+0*22+0*21+1*20+1*2-1+1*2-2 = 9.75。 又如: (7AC.DE)16 = 7*162+10*161+12*160+13*16-1+14*16-2 = 1964.8671875 十进制到N进制的转换那为什么需要除和乘? 假设需要转换的十进制数x,转换N进制完后是abcd.efgh(用代数方式来表示,a~h是N进制下的每一位数),转换成为十进制的计算式子如下: x =a*N3+b*N2+c*N1+d*N0+e*N-1+f*N-2+g*N-3+h*N-4 x = (((((a)*N + b)*N)+c)*N)+d) + e*N-1+f*N-2+g*N-3+h*N-4 这样很容易看出整数部分依次除以N就分别得到d、c、b、a,小数部分依次乘以N就得到e、f、g、h。 2.3 原码和补码 一般书写时表示的数叫真值 机器中编码表示的数机器数或机器码 (1)原码表示法 原码表示法是机器数的一种简单的表示法。其

文档评论(0)

2299972 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档