深入理解计算机系统验证代码1

/* 此程序测试了深入理解计算机系统中的 
   1. Intel是小端计算机
   2. 有符号数是算术移位
   3. 无符号数是逻辑移位
*/

#include <iostream>

using namespace std;

/* C++版本输出任何一种类型的二进制 */
void showByte(char *a,int size)
{
    for(int i=0;i<size;i++)
    {
        unsigned char biaozhun=128;
        for(int j=0;j<8;j++)
        {
            
            if(biaozhun & *(a+i)) 
                cout<<"1";
            else
                cout<<"0";
            biaozhun>>=1;
        }
    }
    cout<<endl;
}

int main()
{
    unsigned int a=2147483648;
    showByte((char *)&a,sizeof(unsigned int));
    a>>=1;
    showByte((char *)&a,sizeof(unsigned int));
    int b=-2147483648;
    showByte((char *)&b,sizeof(int));
    b>>=1;
    showByte((char *)&b,sizeof(int));
    return 0;   
}



运行以下程序,猜测运行结果,哈哈
#include <iostream>

using namespace std;

int main()
{
    int a=-2147483648;
    unsigned int b=1;
    if(a>b)
    {
        cout<<"a>b"<<endl;
    }
    else 
    {
        if(b>a)
        {
            cout<<"b>a"<<endl;
        }
        else
        {
            cout<<"b=a"<<endl;
        }
    }
    return 0;
}

你可能感兴趣的:(C++,c,C#)