随笔分类 - 深入理解计算机系统
关于读这本书的一些东西
摘要:45 小数值二进制表示十进制表示1/80.0010.1253/41/2+1/4 = 0.110.7525/16(16+8+1)/16 = (11001b)/16 = 1.10011.5625(101011b)/2^4 = 43/1610.10112.6875(1001b)/2^3 = 9/81.0011.125(5*8+7)/8=47/8101111b/8 = 101.1115.875(51/16)110011b/16 = 11.00113.187546 A: 0.1 -x 的二进制表示 0.1 = 0.0001100110011001100110011[0011] x = 0.00...
阅读全文
摘要:17 ~ 22(略) 23 A w(int)((word << 24) >> 24)((int)word << 24) >> 240x000000760x000000760x000000760x876543210x000000210x000000210x000000c90x000000c90xffffffc90xEDCBA9870x000000870xffffff87 B func1是做高位截断,func2做符号位扩展. 24(略)25length-1会有溢出,所以改为 < length有符号数和无符号数比较也有问题,当length特别大的
阅读全文
摘要:自己做的答案,还没对照过参考答案。有些题太简单,就没做了。2.1~2.4略 2.5 int val = 0x87654321小端大端存储序列21 43 65 8787 65 43 21show_bytes(valp, 1)/*A.*/2187show_bytes(valp, 2)/*B.*/21 4387 65show_bytes(valp, 3)/*C.*/21 43 6587 65 43 2.6 A 3510593 = 0x00359141 = 1101011001000101000001b3510593.0 = 0x4a564504 =100101001010110010001010..
阅读全文
摘要:就是这本书了,经典的大学教程。计划用半年到一年的时间再读一次。 额外说一下,这里面只有参与者,没有师傅和徒弟。要想获得帮助,首先不要问愚蠢的问题,其次,尽量去帮助别人。别指望有人能够手把手的教你,回答你的每一个问题。每个星期大约安排6个小时的进度,大约是20~30页书的阅读(包括对应的习题解答)。每大章结束后的课后作业,也按照每周6个小时的量来做。练习题书上是有答案的,不过建议不要看,每周把对应的自己做的练习题答案发出来,和别人的答案对照并讨论。 课后作业时没有答案的,做完之后给别人审查,并审查别人的答案。 这些交流,讨论的时间估计每周还需要3~4个小时吧。正式开始时间是11月12号(星期一)
阅读全文
摘要:去网站www.cygwin.com 下载setup.exe,这是在线安装程序。除了默认的安装包,还要额外的安装gcc4和gdb。 在Select Packages界面查找gcc4 然后选择安装All->Devel下的gcc4: GCC Release Series 4 compiler(C & C++ install helper). 还要查找gdb,安装Devel下的The GNU Debugger 安装完毕cygwin以后,执行gcc -v命令,确定你的gcc真的安装好了,并且版本是4.5.3 以及gdb -v 可以试着写一个Hello World程序编译运行一下
阅读全文