关于移位操作的一点重要说明
2016-12-23 09:42
351 查看
我们有下面的测试代码:
#include <iostream> using namespace std; int main() { int num1=7; cout<<"num1(7)<<2: "<<(num1<<2)<<endl; cout<<"num1(7)>>2: "<<(num1>>2)<<endl; int num2=-7; cout<<"num2(-7)<<2: "<<(num2<<2)<<endl; cout<<"num2(-7)>>1: "<<(num2>>1)<<endl; cout<<"num2(-7)>>2: "<<(num2>>2)<<endl; return 0; }
对于正数的移位操作:
7的二进制码为0111
当左移2位时(右边补0):11100 十进制28
当右移2位时(左边补0):001 十进制1
-7的二进制码1111
当左移两位时:111100(最高位为符号位) 十进制-28
当右移1位时 二进制码为1111 取反加一为补码 1001,再右移1位为0100 加上符号位为-4
当右移2位时 二进制码为1111 取反加一为补码 1001,再右移2位为0010 加上符号位为-2
以上就是小编为大家带来的关于移位操作的一点重要说明全部内容了,希望大家多多支持脚本之家~
相关文章推荐
- 关于移位操作的一点说明
- 关于移位操作的一点说明
- 关于memcpy和memmove的一点重要说明
- java 关于操作Collection的一点说明
- jQuery 中关于CSS操作部分使用说明
- [导入]关于pdflock插件(XESC_XELock)的一点说明
- 关于在组件GIS开发中使用Python的一点补充说明
- 关于ODP.NET的一点说明
- 关于delphi Com+调用C# DLL的一点说明
- 关于sql server表名 和字段的一点操作
- 关于asp.net无刷新联动的一点补充说明
- Asp.net 2.0 关于Header/title/Meta tages/Style操作的一点小技巧
- Asp.net 2.0 关于Header/title/Meta tages/Style操作的一点小技巧 http://andyliu.cnblogs.com/archive/2006/03/28/360645.html
- C/C++中关于CONST关键字的一点说明
- 关于对if(rs.next())的一点说明!!
- 关于Windows内核空间操作的一些说明
- 关于outlook 2003 PST文件大小一点说明 推荐
- 关于VS.Net2005中串口操作说明(C#)(SerialPort组件)
- 关于2007年未更新的一点说明
- 关于equals()和==操作的一点理解