zoukankan      html  css  js  c++  java
  • C语言中负数的存储方式

    详细介绍负数的文章:

    https://blog.csdn.net/daiyutage/article/details/8575248

    1.以char类型举例,其取值范围是 -128 ~ 127,即-2E7 ~ 2E7-1, 用最高位表示其符号,0表示正数,1表示负数。数值以补码形式存储。正数的补码就是该正数本身,负数的补码需要转化,如下:
        1>.对负数取绝对值,用二进制表示
        2>. 对每一位取反;
        3>. 对该数加1。
    注意:char类型的0 没有+0 和 -0 的区分,即使想区分,按照上述操作,得到的都是 0000 0000

    举例:-1 取绝对值0000 0001 -> 取反1111 1110 ->加1得到 1111 1111

    下面是一些数值的补码格式:

    -128 存储数值 1000 0000     

    -127 存储数值 1000 0001

    -126 存储数值 1000 0010

    .....

    -3    存储数值 1111 1101

    -2    存储数值 1111 1110

    -1    存储数值 1111 1111

    0    存储数值 0000 0000

    1    存储数值 0000 0001

    2    存储数值 0000 0010

    3    存储数值 0000 0011

    ...

    125 存储数值 0111 1101

    126 存储数值 0111 1110

    127 存储数值 0111 1111

  • 相关阅读:
    c_hhc_互补二元组(延迟计数+简单公式变换)
    b_vj_Hamiltonian Cycle(记忆化+位运算各种技巧)
    b_lq_分考场(尽量安排到旧考场)
    线程停止
    Lambda表达式
    静态代理演示
    多线程模拟龟兔赛跑
    Runnable和Thread
    线程网图下载
    接口
  • 原文地址:https://www.cnblogs.com/jyfyonghu/p/10467719.html
Copyright © 2011-2022 走看看