zoukankan      html  css  js  c++  java
  • 原码 反码 补码

    概述:
    数值的表示方法——原码、反码和补码
    原码:最高位为符号位,其余各位为数值本身的绝对值

    反码
    正数:反码与原码相同
    负数:符号位为 1,其余位对原码取反

    补码
    正数:原码、反码、补码相同
    负数:最高位为 1,其余位为原码取反,再对整个数加 1
    计算机原码用于表示有符号整数中的正数和无符号整数

    ================================================

    计算机用【原码】存储(有符号正数)和(无符号整数)
    计算机用【补码】存储(有符号负数),补码减1=反码,反码取反=原码

    示列
    int a = -1; 这里的-1用补码存储
    print(%d,%u,a,a);
    %d按打印=-1,为什么是-1(原码),因为这里打印的有符号十进制,如果这里是-100,%u打印,就会打印-00,
    %u按补码打印=4294967295(补码)%u按照无符号十进制打印。

    原码:1000 0000 0000 0000 0000 0000 0000 0001
    反码:1111 1111 1111 1111 1111 1111 1111 1110
    补码:1111 1111 1111 1111 1111 1111 1111 1111 补码要从反码哪里加1

    %d按照有符号十进制打印,%u按照无符号十进制打印。

    pritf是直接抓取二进制数,无论这个数据以前是什么类型,按照%d,%u,%....来解析

    printf是根据给出的%..是多少打印对应的值

  • 相关阅读:
    终于学会用WinCVS来开源了
    从网上收集EMail(正则表达式,C#源码)
    元宝NewBar发布1.2.0测试版
    使用Gimp切图
    shell编程笔记
    poj2485
    poj 3630 字典树
    杭电oj题目和分类
    强连通分量Kosaraju算法
    随机数的产生
  • 原文地址:https://www.cnblogs.com/weekbo/p/8135470.html
Copyright © 2011-2022 走看看