下载此文档

单片机原理与应用及c51程序设计.doc


文档分类:IT计算机 | 页数:约10页 举报非法文档有奖
1/10
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/10 下载此文档
文档列表 文档介绍
第1章基础知识
信息在计算机中的表示
我们现在使用的计算机是按照冯·诺依曼(Von Neumann)的存储程序原理工作的,其全称为数字式电子计算机,内部按二进制数进行运算。任何信息,不管是数字还是字符,在计算机中都是以二进制编码形式进行表示和处理的。在学****计算机内部信息的处理、表示之前,先介绍一下计算机中信息的表示。
数在计算机内的表示
计算机中的数通常有两种:无符号数和有符号数。两种数在计算机中的表示是不一样的。无符号数由于不带符号,表示时比较简单,可以直接用它对应的二进制形式表示。例如,假设机器字长为8位,则123表示成01111011B。
有符号数带有正负号。数学上用正负号来表示数的正负。由于计算机只能识别二进制符号,不能识别正负号,因此计算机中只能将正、负号数字化,用二进制数字表示。通常,在计算机中表示有符号数时,在数的前面加一位,作为符号位。正数表示为0,负数表示为1,其余的位用以表示数的大小。这种连同一个符号位在一起作为一个数,称为机器数,它的数值称为机器数的真值。。
机器数的表示
为了运算方便,机器数在计算机中有3种表示法:原码、反码和补码。
1. 原码
用原码表示时,最高位为符号位,正数用0表示,负数用1表示,其余的位用于表示数的绝对值。正数的符号位为0,因而正数的表示与它对应的无符号数的表示相同,负数则不是。。
用原码表示时,由于最高位用作符号位,剩下的位作为数的绝对值位。对于一个n位的二进制数,其原码表示范围为-(2n-1-1)~+(2n-1-1)。例如,如果用8位二进制表示原码,则数的范围为-127~+127。
原码的表示
用原码表示时,对于-0和+0的编码不一样。假设机器字长为8位,-0的编码为10000000B,+0的编码为00000000B。
【例1-1】求+67、-25的原码(机器字长8位)。
因为
½+67½=67=1000011B
½-25½=25=11001B
所以
[+67]原=01000011B
[-25]原=10011001B
2. 反码
用反码表示时,最高位为符号位,正数用0表示,负数用1表示。正数的反码与原码相同,而负数的反码可在原码的基础之上,符号位不变,其余位取反得到。
反码数的表示范围与原码相同,对于一个n位的二进制,它的反码表示范围为-(2n-1 -1)~+(2n-1-1),对于0,假设机器字长为8位,-0的反码为11111111B,+0的反码为00000000B。
【例1-2】求+67、-25的反码(机器字长8位)。
因为
[+67]原=01000011B
[-25]原=10011001B
所以
[+67]反=01000011B
[-25]反=11100110B
3. 补码
用补码表示时,最高位为符号位,正数用0表示,负数用1表示。正数的补码与原码相同,而负数的补码可在原码的基础之上,符号位不变,其余位取反,末位加1得到。对于一个负数X,其补码也可用2n-½X½得到,其中n为计算机字长。
【例1-3】求+67、-25的补码(机器字长8位)。
因为
[+67]原=01000011B
[-25]原=10011001B
所以
[+67]补=

单片机原理与应用及c51程序设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数10
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ranfand
  • 文件大小420 KB
  • 时间2017-12-09