为什么 在内存中为什么 0xffff 是 -1

文章目录

前言数在内存中是如何表示的?-1 的二进制编码

前言

关于补码的理解 还搞不懂负数怎么用二进制表示?看完这一篇就懂了

数在内存中是如何表示的?

在计算机中数值是以二进制补码形式存在的。

正数的补码不变

负数的补码为 原码 ->取反 -> 加一 有符号二进制数–补码

-1 的二进制编码

+1 的二进制 (第一位是符号位) 0000 0000 0000 0001

-1 的二进制 (第一位是符号位) 1000 0000 0000 0001

-1 的二进制 (第一位是符号位) 1000 0000 0000 0001

-1 的二进制反码 1111 1111 1111 1110 - -1 的二进制补码 (反码+1) 1111 1111 1111 1111

-1 的16进制 ffff