计算机原理
文章平均质量分 71
Zach_ZSZ
IT攻城狮,喜爱研究技术,希望通过不断的学习,将来能更多的分享技术,更好的使用技术。
展开
-
原码,补码,反码的理解以及应用场景
原码是人类最容易理解和使用的数的表示方法,但是在计算机内部使用原码表示负数会导致零的表示不唯一(+0 和 -0),并且负数运算比较复杂。正数的补码与其原码相同,而负数的补码是在其反码的基础上加1。反码解决了零的表示问题,但是在进行加法运算时,两个负数相加还是会出现进位问题,而且两个相反数相加不会得到零,这在逻辑上是不合理的。原码表示法的第一位是符号位(0代表正,1代表负),其余位代表数值的大小。正数的反码与其原码相同,而负数的反码是其原码基础上符号位不变,其余各位取反(0变1,1变0)。原创 2024-04-21 15:41:57 · 729 阅读 · 0 评论 -
深入理解位运算以及位运算在Java源码中的运用
程序中的数在计算机中都是以二进制形式存储,位运算就是直接对整数在内存中的二进制位进行操作,位运算 包括位逻辑运算和移位运算,位逻辑运算能够方便设置或屏蔽某个字节的一位或几位,也可以对两个数按位相加,移位运算可以对内存中某个二进制左移或右移几位。将参与运算的两个二进制数进行^异或运算,如果2个二进制位都是0或者都是1,那么就是0,如果两个二进制位不同,则为1。将参与运算的两个二进制数进行|或运算,两个二进制位只要其中1个是1 ,那么就是1,如果2个二进制位都是0则表示0。(0与任意数N|运算都是任意数N)原创 2024-04-21 15:39:10 · 1055 阅读 · 0 评论