按位取反~100=-101

首先看等号左边
(100) 的二进制表示为: 0110 0100
按位取反的意思就是每一位取反,0变1,1变0
所以:
~100 的二进制表示为:1001 1011
所以等号左边=1001 1011

再看右边
-101. 一旦看到出现负数,那么这个数一定是按有符号数的规则来表示的。一个二进制数 按位取反并加一以后就可以得到它自己的负数的补码,也就是说:
~x+1=-x
所以,我们把101按位取反加一
先取反:
~101=10011010
再加一:
~101+1=10011011=-101
所以等号右边=10011011=左边,所以等号成立。

P.S:补充一句,计算机内存里的逻辑存储位是非常复杂的,我这里即使讲得再清楚也无法保证你完全明白。
一般来说,汇编语言的书的开头部分会详细讲解这部分知识以服务于汇编语言,请参阅之。

时间: 2024-10-06 01:38:49

按位取反~100=-101的相关文章

SQL每个月份的发生额都比101科目多的科目

请用SQL语句实现:从TestDB数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目.请注意:TestDB中有很多科目,都有1-12月份的发生额.                  AccID:科目代码,Occmonth:发生额月份,DebitOccur:发生额.                  数据库名:JcyAudit,数据集:Select * from TestDB                  准备数据的sql代码: drop table if exists Te

php兄弟连学习30-60

整型浮点型整型的最大长度32位表示二进制数表示整数是由32位二进制保存的数据里面没有无符号一说 hello worldh e l l o a->97b->98c->99d 100e 101f 102g 103h ->104 echo ord('h'); h是104一个整型,它是由一个32位的二进制存储的 00000000 00000000 00000000 00000000高电频 低电频 64 + 32 + 8 00000000 00000000 00000000 01101000

Hive入门到剖析(一)

1 Hive简介 1.1 Hive定义 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能. 本质是将SQL转换为MapReduce程序. 1.2 为什么使用Hive 1.面临的问题 人员学习成本太高 项目周期要求太短 我只是需要一个简单的环境 MapReduce  如何搞定 复杂查询好难 Join如何实现 2.为什么要使用Hive 操作接口采用类SQL语法,提供快速开发的能力 避免了去写MapReduce,减少开发人员的学习成本 扩展

liunx 命令解析1

RHEL5.3安装光盘主要文件内容:ClusterClusterStorageimagesisolinuxServerVT showmount -e 10.1.1.20显示指定的主机可供挂载的目录 将U盘作为引导盘dd if=diskboot.img of=/dev/sdb CTRL + SHIFT + T增加终端标签 常用的shell  cat /etc/shells    /bin/sh   /bin/bash   /sbin/nologin   /bin/tcsh   /bin/csh 

hive支持sql大全

转自:http://www.aboutyun.com/thread-7316-1-1.html 一.关系运算:1. 等值比较: = 语法:A=B 操作类型:所有基本类型 描述: 如果表达式A与表达式B相等,则为TRUE:否则为FALSE 举例:hive>select 1 from lxw_dual where 1=1; 2. 不等值比较: <> 语法: A <> B 操作类型: 所有基本类型 描述: 如果表达式A为NULL,或者表达式B为NULL,返回NULL:如果表达式A与

Hive 内建操作符与函数开发——深入浅出学Hive

第一部分:关系运算 Hive支持的关系运算符 ?常见的关系运算符 ?等值比较: = ?不等值比较: <> ?小于比较: < ?小于等于比较: <= ?大于比较: > ?大于等于比较: >= ?空值判断: IS NULL ?非空判断: IS NOT NULL ?LIKE比较: LIKE ?JAVA的LIKE操作: RLIKE ?REGEXP操作: REGEXP ?等值比较: = 语法:A=B 操作类型:所有基本类型 描述: 如果表达式A与表达式B相等,则为TRUE:否则为

Python全栈考试(一)

1.执行 Python 脚本的两种方式 你也可以用PyCharm 2.简述位.字节的关系 数据存储是以"字节"(Byte)为单位,数据传输是以大多是以"位"(bit,又名"比特")为单位,一个位就代表一个0或1(即二进制),每8个位(bit,简写为b)组成一个字节(Byte,简写为B) 3.简述 ascii.unicode.utf--‐8.gbk 的关系 ASCII码最多只能表示 255 个符号 unicode最多只能表示65536个字符 utf

python基础篇【第二篇】

一.数据运算 举个例子一目了然就明白什么是运算符了:例子10+20=30,其中10,20为操作符 ,“+” 称为运算符. python支持支持的类型运算符有:算术运算.比较(关系)运算符.赋值运算符.逻辑运算符.位运算符.成员运算符.身份运算符.运算符优先级,下面我们一个个来看. 1.算数运算: 假设变量a=10,变量b=20: 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10 * 乘 - 两个数相

Android Studio计算器

---恢复内容开始--- 从计算器的例子中学到,1 导入相应包声明alt+enter2 ctrl+o对父类方法进行重写3 删除一行ctrl+x4 padding表示内边距布局文件写在layout布局中,layout中的布局背景颜色在drawable中,drawable中引用的颜色在values中的color.xml中 取出显示的内容String str=et_input.getText().toString() MainActivity 1 package calcluatedemo.examp