第三章作业

无符号的整数加法、乘法是mod2^32的加法、乘法;


证明:

#include "stdafx.h"

#include "iostream"

using namespace std;

int main()

{

unsigned int t = UINT_MAX;

cout << "令t = unsigned int 的最大值 = " << t << endl;

cout << "2^32 = " << pow(2, 32) << endl;

cout << "2^32 - t = " << pow(2, 32) - t << endl;

cout << "由上可得2^32大于unsigned int能表示的最大值\n\n";

cout << "故2^32用unsigned int表示将会溢出\n\n";

cout << "无符号整数的mod2^32等价于它们本身\n\n";

cout << "故无符号的整数的加乘为其mod2^32的加乘\n";

return 0;

}


代码运行结果如下:

令t = unsigned int 的最大值 = 4294967295

2^32 = 4.29497e+09

2^32 - t = 1

由上可得2^32大于unsigned int能表示的最大值

故2^32用unsigned int表示将会溢出

无符号整数的mod2^32等价于它们本身

故无符号的整数的加乘为其mod2^32的加乘

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容