//32位系统示例 依次左移
//10000000000000000000000000000001 80000001 -1
//10000000000000000000000000000010 80000002 -2
//10000000000000000000000000000100 80000004 -4
//10000000000000000000000000001000 80000008 -8
//10000000000000000000000000010000 80000010 -16
//10000000000000000000000000100000 80000020 -32
//10000000000000000000000001000000 80000040 -64
//10000000000000000000000010000000 80000080 -128
//10000000000000000000000100000000 80000100 -256
//10000000000000000000001000000000 80000200 -512
//10000000000000000000010000000000 80000400 -1024
//10000000000000000000100000000000 80000800 -2048
//10000000000000000001000000000000 80001000 -4096
//10000000000000000010000000000000 80002000 -8192
//10000000000000000100000000000000 80004000 -16384
//10000000000000001000000000000000 80008000 -32768
//10000000000000010000000000000000 80010000 -65536
//10000000000000100000000000000000 80020000 -131072
//10000000000001000000000000000000 80040000 -262144
//10000000000010000000000000000000 80080000 -524288
//10000000000100000000000000000000 80100000 -1048576
//10000000001000000000000000000000 80200000 -2097152
//10000000010000000000000000000000 80400000 -4194304
//10000000100000000000000000000000 80800000 -8388608
//10000001000000000000000000000000 81000000 -16777216
//10000010000000000000000000000000 82000000 -33554432
//10000100000000000000000000000000 84000000 -67108864
//10001000000000000000000000000000 88000000 -134217728
//10010000000000000000000000000000 90000000 -268435456
//10100000000000000000000000000000 A0000000 -536870912
//11000000000000000000000000000000 C0000000 -1073741824
//10000000000000000000000000000000 80000000 -2147483648
//00000000000000000000000000000000 00000000 0
int GetSystemBit()
{
int i=0;
int x=0;
double a=0;
__asm //将-1 连续左移直到为 0
{
mov eax,-1; //将-1赋值给eax
start:
cmp eax,0; //判断 eax - 0 ?= 0
je end; //以上两个值相等则跳转end
shl eax,1; //左移一位
mov ecx,i; //将i赋值给ecx
inc ecx; //将ecx增加1
mov i,ecx; //将ecx赋值给i
jmp start; //跳转到 start
end:
mov x,eax;
}
CString str;
str.Format(_T("\n%d %d Bits System\n"),i,x);
OutputDebugString(str);
return i;
}
【语言-汇编】 判断处理器 (操作系统的)位数
最新推荐文章于 2021-05-17 16:58:42 发布