源码:正数的补码与原码相同例+7 源码:00000111 补码 :00000111 (用8位二进制表示一个数)
负数的补码:
符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。
-7 源码: 10000111 ,其绝对值为00000111 取反加一:11111001 为-7补码
已知一个数的补码,求原码的操作分两种情况:
(1)如果补码的符号位为“0”,表示是一个正数,其原码就是补码。
(2)如果补码的符号位为“1”,表示是一个负数,那么求给定的这个补码的补码就是要求的原码。
补码:00001111 ->原码:00001111
补码:11110001 -> 01110001 取反加一 -> 原码:10001111
逻辑运算:异或("^")
其运算法则为: a^b=(a' and b) or (a and b') (a'为非a)
0 ^ 1 得 1, 1 ^ 1 得 0 ,0 ^ 0 得 0,1 ^ 0 得 1
左移位:<<,有符号的移位操作
左移操作时将运算数的二进制码整体左移指定位数,左移之后的空位用0补充
右移位:>>,有符号的移位操作
右移操作是将运算数的二进制码整体右移指定位数,右移之后的空位用符号位补充,
如果是正数用0补充,负数用1补充。
System.out.println(3<<2);//3左移2位 0000 0011 ==> 000000 1100
System.out.println(-3<<2);//-3左移2位 1000 0011 ==> 1000 001100
System.out.println(6>>2);//6右移2位 0000 0110 ==> 0000 0001|10
System.out.println(-6>>2);//-6右移2位
1000 0110--->0000 0110(绝对值)--> 1111 1010(补码)-->1111 1110 |10
--> 1111 1110
求1111 1110的源码--> 0111 1110--> 1000 0010--> -2
无符号的移位“>>>”:无符号的移位只有右移,没有左移使用“>>>”进行移位,都补充0
System.out.println(6>>>2); //1
System.out.println(-6>>>2); //1073741822
00000000 00000000 00000000 00000110 +6在计算机中表示方法
11111111 11111111 11111111 11111001
11111111 11111111 11111111 11111010 -6(补码)在计算机中的表示
0011111111 11111111 11111111 11111010 右移两位,补充0,结果为1073741822
分享到:
相关推荐
汇编实验2 汇编语言程序设计的实验环境及上机步骤 实验二 算术逻辑运算及移位操作
一。 把数据、地址或立即数传送到寄存器、存储单元以及I/O端口,或从... 二 使用算术逻辑运算和移位指令,可以实现对二进制数据的加、减、乘、除等四则运算,与、或、非、异或等逻辑运算,以及移位运算和代码转换运算
ALU需要实现对应的加减、逻辑运算、移位、比较等功能并采用仿真软件设计和对软件进行调试。 1.2 总体设计 1.2.1 总体设计原理 ALU是一种功能较强的组合逻辑电路,它能进行多种算术运算和逻辑运算。ALU给出运算结果的...
5逻辑运算和移位循环类.pdf
算数与逻辑运算和移位指令PPT学习教案.pptx
微型计算机原理与接口技术:5逻辑运算和移位指令.ppt
微型计算机原理与接口技术第3章8088指令系统4逻辑运算和移位指令.ppt
微型计算机原理与接口技术:第3章 8088指令系统4(逻辑运算和移位指令.ppt
2.了解4位函数发生器74LS181的组合功能,熟悉运算器执行算术操作和逻辑操作的具体实现过程; 3.验证带进位控制的74LS181的功能。 二、实验设备: EL-JY-II型计算机组成原理实验系统一套,排线若干。
80X86汇编语言程序设计第二章⑦.80868088指令系统(四)逻辑运算和移位指令[参照].pdf
1. 除法溢出 2. 逻辑运算和移位指令 3. 字符串操作指令
移位运算实验报告,逻辑移位,循环移位。计算机组成原理实验报告。
对byte 和short类型的值进行移位运算的结果是int 型,而且如果左移不超过31位,原来对应各位的值也不会丢弃。但是,如果你对一个负的byte 或者short类型的值进行移位运算,它被扩大为int 型后,它的符号也被扩展。...
以下面的格式提供运算表达式:$(( expression )) $ echo $((5*(3+3))) 30 $ result = $(($myvar-10)) shell提供方便的数之间的进制转换: $ echo $((013))#八进制 $ echo $((0xA4))#十六进制 还可以使用以下格式指定...
华中科技大学计算机组成原理实验二运算器实验Logisim源文件,里面有8位可控加减法器设计、32位算术逻辑运算单元ALU设计、四位先行进位74182、四位快速加法器 、8位快速加法器、16位快速加法器、5位阵列乘法、6位补码...
【IT十八掌徐培成】Java基础第02天-04.运算符-移位运算-逻辑运算.zip
用C/C++语言实现计算机内部,运算器基本算术运算和逻辑运算,包括:原码一位乘法、补码一位乘法(Booth)、原码加减交替除法、补码加减交替除法、逻辑左右移位、逻辑与、逻辑或、逻辑非、逻辑异或。由控制器从ins_...
LU的算数运算主要以加、减法为主,至于乘法、除法则可用“移位”配合“加法”的方法加以处理,即可完成运算。虽然逻辑运算的种类很多,但实际上ALU中的逻辑电路单元通常只处理AND、OR、XOR、NOT这四种运算,其它的...
从进位计数制及其相互转换、定点数的表示和运算(移位、原码补码的定点加减、溢出及其判别方法)、浮点数的表示和运算、(IEEE754标准、浮点数的加减运算)、算术逻辑单元---ALU以及其他的补充知识来进行串联,这次...