Java运算符(取反,左移,右移)

本文深入解析了Java中的基本编码知识,包括源码、反码、补码的概念及其运算原理,详细介绍了位取反运算和位移操作的具体实现,以及如何在计算机内部表示和处理负数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

“#Java运算符”
<1>计算机的基本编码知识:
源码,反码,补码
①计算机的这些编码是转换成二进制进行运算的
②正数的源码,反码,补码均相同
③关于负数的源码,反码,补码
在这里插入图片描述
(补码是计算机数字存储的实际存储形态)
<2>取反运算:存在公式a+(a)+1=0,所以a=-1-(~a)
注意点:位取反,对包括标志位在内的所有位直接取反,得出的数标志位为1,表明答案是负数,负数在计算机中以补码的形式存在(正数也是)但是答案一般要求得到十进制答案,所以需要将所得答案转换为十进制,具体操作是:除标志位外整体取反,之后加一(答案为正数执行减一)
<3>位移操作:左移运算,右移运算,无符号右移运算
在这里插入图片描述

(a:待操作数,n:位移的数量)
详细操作:①左移运算:向左移动一位,高位(最左边)补一位零
②右移运算:正数向右移动一位,高位(最左边)补一位零;负数向右移动一位,高位补一位一
③无符号右移运算:无论正负右移一位高位补一位零

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值