首页 > 软件操作教程 > 编程开发 > C语言
题目内容

C语言基础知识—计算机内存数值存储方式

题目答案

1>.原码

 

一个数的原码(原始的二进制码)有如下特点:

    最高位作为符号位,0表示正,1表示负;

    其它数值部分都是数值本身绝对值的二进制数;

    负数的原码是在其绝对值的基础上,最高位变为1

 

举个例子,我们用一个字节的原码来表示+15-15+0-0

    +15  0000 1111

    -15  1000 1111

    +0   0000 0000

    -0   1000 0000

 

    原码表示方法简单易懂,带有符号数本身转换方便,只要符号位还原即可,但当两个整数相减或不同符号相加时,必须比较两个数哪个绝对值大,才能决定谁减谁,才能确定结果是正还是负,所以原码不便于加减运算。

 

2>.反码

 

一个数的反码(原始的二进制码)有如下特点:

   对于正数,反码与原码相同;

    对于负数,符号位不变,其它部位去反;

    

举个例子,我们用一个字节的反码来表示+15-15+0-0

  +15 0000 1111

  -15 1111 0000

  +0 :  0000 0000

   -0  :  1111 1111

 

  反码运算也不方便,通常用来作为求补码的中间过渡

 

3>.补码

 

在计算机中,数值一律用补码来存储。补码特点如下:

  对于正数,原码,反码,补码相同;

  对于负数,其补码为它的反码加1

  补码符号位不动,其他为求反,最后整个数加1,得到原码;

 

举个例子,我们用一个字节的补码来表示+15-15+0-0

  +15 0000 1111

  -15 1111 0001

  +0  0000 0000

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

软件操作 新人注册送三重礼

已有 22658 名学员学习以下课程通过考试

相关视频试题

最需教育客户端 软件问题一手掌握

去 App Store 免费下载 iOS 客户端