细节6:算术右移和逻辑右移
一、对于有符号数 int
正数,左移直接丢弃最高位,在低位补对应个数的0;
正数,右移直接丢弃最低位,在高位补对应个数的0;
负数,左移直接丢弃最高位,在低位补对应个数的0;
负数,右移直接丢弃最低位,在高位补对应个数的1;
二、对于无符号数 unsigned int
左移直接丢弃最高位,在低位补对应个数的0;
右移直接丢弃最低位,在高位补对应个数的0,即使最高位原来是1;
三、总结
算术右移:最高位填充符号位。正数填充0,负数填充1
逻辑右移:最高位填充0
左移都是补0
参考链接:https://blog.csdn.net/test1280/article/details/79858715
细节6:算术右移和逻辑右移相关推荐
- 【Java】位运算符---算术右移和逻辑右移、算术左移和逻辑左移
文章目录 1. 算术左移和逻辑左移 2. 算术右移和逻辑右移 3. Java中<<.>>和>>>的含义 1. 算术左移和逻辑左移 对于有符号数或无符号数:算术 ...
- 算术右移与逻辑右移的转换
算术右移与逻辑右移的转换 用逻辑右移实现算术右移 //用逻辑右移来完成算术右移 int sra(int x, int k) {int xsrl = (unsigned) x >> k;in ...
- Verilog-移位操作(算术右移与逻辑右移)
Verilog-移位操作(算术右移与逻辑右移) 写在前面 MIPS文档中的指令介绍 算术右移与逻辑右移及其Verilog语言区别 算术左移与逻辑左移 写在前面 在计算机组成原理课程设计-Verilog ...
- 算术左移,逻辑左移,算术右移,逻辑右移之间的区别
1.算术左移,逻辑左移: 都是在右边补0: 比如 00101011 算术左移一位:01010110 逻辑左移一位:01010110 对于二进制的数值来说左移n位等于原来的数值乘以2的n次方 比如000 ...
- 算术右移与逻辑右移的区别
算术右移与逻辑右移的区别: 1.右移移动的是二进制位 2.右移操作符分为算术右移操作符和逻辑右移操作符: 算术右移操作符: 右边(低位)舍去,左边(高位)补原符号位,原符号位为0就补0,为1就补1: ...
- 探讨位操作、算术右移、逻辑右移
#include <stdio.h> // IO #include <stdlib.h> // 提供 EXIT_SUCCESS #include <limits.h> ...
- 算术右移 java_Java 中 算术右移和逻辑右移有什么区别?
算术移位:>>,有符号的移位操作,右移之后的空位用符号位补充,如果是 正数用 0 补充,负数用1补充. 例1: -4>>1 -4的原码 10000000 00000000 00 ...
- 算术左移、算术右移、逻辑右移
首先说明一点,本文所有的操作都是针对存储在计算机中中二进制的操作,正数在计算机中是用二进制表示的,负数在计算机中使用补码表示的. 算术左移(<<):有符号的移位操作:该操作时将运算数的二进 ...
- 逻辑左移、算术左移、逻辑右移、算术右移
汇编指令: (注意,所有移位指令,被移出去的那个位上的值,会被赋值给CF标志位) 逻辑左移:SHL(右边补0) 算术左移:SAL(1.寄存器中自动转换成SHL,左移不存在算术左移,所有左移都是SHL: ...
最新文章
- linux中使用net方式连接网络,如何使用 Netplan 从终端连接到无线网络?
- JVM-class文件完全解析-方法表集合
- C#Windows 服务制作安装删除. 用户注销后,程序继续运行 (转载)
- C#利用SQLDMO备份与还原数据库
- Unix操作系统***追踪反击战
- 安全性能两手抓,华为云MySQL“非双一特性”助力企业业务稳定高效运行
- 一个随机数发生器(一)
- 6.1. 概率密度估计
- IDEA HTML 动态访问本地图片加载失败
- Spell Checker
- linux 网络重组 分片 gso lro
- mysql 增加分区_MySql数据分区操作之新增分区操作
- GBase 8s 编写使用UDR(C/Java) 转发liaosnet
- 阿里天池龙珠计划-SQL训练营-Task06
- 儿童身高体重健康对照表
- CSS3 - 新增选择器
- 用python处理excel的基本语法_Python操作Excel学习笔记(28):条件格式
- ORA-00600_内部错误代码_参数19004
- 主板维修测试软件,主板维修关键测试点(强烈推荐)
- 最小的语言符号是A词B语素C音素D义素,2018年10月自考《语言学概论》模拟试题(8)...