补码计算方法

补码计算方法很基础的知识 但是确实很多人并不知道怎么计算 总结了下 可以收藏 需要的时候看下 与编程息息相关学习目标 在 vc 6 0 中 int 类型所能存储的数字的范围是多少 int 类型所能存储的最大正数用十六进制表示 7FFFFFFFint 类型所能存储的绝对值最大的负数用十六进制表示是 8

    ​    ​很基础的知识,但是确实很多人并不知道怎么计算,总结了下,可以收藏,需要的时候看下。

与编程息息相关

学习目标:

            在vc++6.0中int类型所能存储的数字的范围是多少

             int类型所能存储的最大正数用十六进制表示:7FFF FFFF

             int类型所能存储的绝对值最大的负数用十六进制表示是:

           最小负数的二进制代码是多少

            最大正数的二进制代码是多少

            已知一个整数的二进制代码求出原始的数字

            数字超过最大的正数会怎样


补码:

            原码:也叫 符号-绝对值码

                        最高位表示正    1表示负 ,其余二进制位的数字的绝对值的二进制位

                         

                        原码简单,但是加减复杂,存在加减乘除四种运算,增加了CPU的负荷

                        而且0的表示不一样

            反码:运算不便,也没有在计算机中应用

            移码:表示数值平移n位,n称为移码量

                      移码主要用于浮点数的阶码的存储

*

补码:重点是补码,主要是用来解决整数的存储

十进制转二进制

                              除3取余,直到商为0,余数倒序排列

*

1.负整数转二进制

                                 先求与该负数相对应的正整数的二进制代码,然后将所有为取反,末尾加一,不够位数时,左边补1

例如:(-3)

           正整数为:011

                  取反:100

            末尾加一:101

            占四个字节,32位,所以补29个1

                      就是          FFFF FFFD

/*2018年1月6日13:01:18 *补码运算 */ # include 
   
     int main(void) {     int i =-3;     printf("%#X\n",i);     return 0; } /*输出:0XFFFFFFFD * */  
   

2.已知二进制求十进制

      如果首位是0,则表明是正整数,按普通的方法来

      如果首位是1,则表明是负整数

                    将所有位取反,末位加一,所得数组就是该负数的绝对值,位数不够补1(因为是负数)

       

先取反加一     010001

负数的绝对值: -17

注意:在计算机实验时,前边注意

   

/*2018年1月6日19:34:47 *补码运算,二进制计算 */ # include 
   
     int main(void) {     int i =0xFFFFFFEF;     printf("%d\n",i);     return 0; } /* *输出:-17 */ 
   

            

*

作业:8位二进制转化为十进制

0000 0000                 0

0000 0001                 1

.

.0111 1111                  7F             7*16+15=127       最大值(二进制是有正负的)

1000  0000                  -128

记住下边图就行了

补码计算方法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/206237.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午4:08
下一篇 2026年3月19日 下午4:09


相关推荐

  • 初级算法学习步骤

    初级算法学习步骤前言零散整理一个多月终于整理完了。。。。这是一篇初级算法学习的步骤总结,或许可以帮助你怎么去接触算法阅读本文需要一定java语法基础和api文档查看基础,但算法其实看重的是思想而不是语言,所以都可以借鉴。本人大二,参加过蓝桥杯。一直没时间吧之前的总结整理出来,现在准备整理一下用java做算法的一些东西……学习了两个月左右算法,从啥都不会到小白再到算是初级……做一个总结,请高手多多指…

    2022年6月19日
    35
  • 给你的网页添加看板娘(以给博客园博客添加看板娘为例)(保姆级图文)

    给你的网页添加看板娘(以给博客园博客添加看板娘为例)(保姆级图文)给你的网页添加看板娘 以给博客园博客添加看板娘为例 保姆级图文 解决了此处出现了不允许使用的标签 移动 link 的位置即可

    2026年3月17日
    2
  • 精读论文题目_in large part as a consequence

    精读论文题目_in large part as a consequence基于高鲁棒性的弹性扭曲视差容忍图像拼接算法

    2025年11月25日
    3
  • MATLAB分段函数及应用实例

    MATLAB分段函数及应用实例简单实例:用matlab画分段函数        当x<0时 y=5*sin(x);        当x>=0且x<=5时y=x^2;        当x>5时y=(8-x)^2+16.x=-5:0.001:10;y=5*sin(x).*(x<0)+x.^2.*(x>=0&x<=5)+((8-x).^2+16).*(x>5);p…

    2022年6月7日
    46
  • USB接口定义

    USB接口定义USB接口标准USB是电脑的常见接口,有4根线,两根电源线和两个信号线,电源线正负极供电,接烦可能导致USB设备或电脑的南桥芯片烧坏。typeA即我们常见的标准USB大口,主流的可以分为USB2.0速度(几十M/S)和USB3.0速度(上百M/S),事实上目前有少量Type-A为USB3.110Gbps速度,常见于新的台式机主板上。typeB常见于打印机以及带触摸和U…

    2022年5月30日
    70
  • 词向量模型(1)[通俗易懂]

    词向量模型(1)[通俗易懂]词向量模型one-hotVectorone-hotvector最简单的编码方式:假设我们的词库总共有n个词,那我们开一个1*n的高维向量,而每个词都会在某个索引index下取到1,其余位置全部都取值为0。问题这种词向量编码方式简单粗暴,我们将每一个词作为一个完全独立的个体来表达。遗憾的是,这种方式下,我们的词向量没办法给我们任何形式的词组相似性权衡。因为你开了一个极高维度的…

    2022年5月8日
    70

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号