【第六周读书笔记】计算机体系结构读后感

  《看创新者读后感》埃达洛夫莱斯伯爵夫人,很喜欢将自己天马行空的想象力和对数字的着迷联系在一起,对于当时的很多人来说,浪漫主义时期的细腻感性与工业革命带来的技术狂热是互不相容的,但她却能在两个时代之间游刃有余。埃达对诗歌和数学的热爱让她有能力看到计算机器背后的魅力所在。她是浪漫主义科学时代的一位典范,这个时代的发明和探索都带有一种诗意的热情。事实上,埃达做出的贡献不但意义深远,而且鼓舞人心。她窥见未来的能力已经超过了巴贝奇,以及任何一个与她处于同一时代的人。她眼中的未来是机器会成为人类想象力的伙伴,这两者的结合可以编织出如雅卡尔提花一样精美的图案。她对诗意科学的理解让她能够欣赏一种想象中的计算机器,虽然当时的科学水平无法实现这种设备的建造,但是埃达认识到了它的处理能力可以用于任意形式的信息。因此,埃达·洛夫莱斯伯爵夫人确实帮助播下了数字时代的种子,它们将在100年之后开花结果。所以,我觉得我们应该在学技术的同时也应该提升自己的文学,艺术素养,只有两者完美的结合,才能让你的想法更加完善。

  创新有时只是时机的问题。如果一个伟大想法出现的时候刚好存在可以实现它的技术,那么一项创新就诞生了。

  技术的发展不仅体现在重大的飞跃之中,还是由无数个小幅的改进累积而成的。

       我们可以把创新看成是无数个细小的进步不断累积的结果,例如计数器和打孔卡片的读卡器。除了无数个细小的进步以外,计算机时代的诞生还需要一些有远见的人的创造性飞跃。表现出优秀创新者特点的事情:总结自己在四处考察期间所了解到的全部信息。

  埃克特和莫奇利两人之间可以起到互补的作用,这点让他们成为数字时代众多双人领导组合当中的典范。埃克特会以精益求精的要求来鞭策其他人;莫奇利则更擅长于安抚人心,并让他们感受到关爱。

  看完第一部分,我感觉到了非常的震撼,真的为这些创新者的素质所折服,这些创新者真的让人非常的崇拜。同时,我们也应该向他们学习。

  《计算机体系结构》读后感:

首先,让我对以前学习过的C语言有了更深入,更本质的理解。虽然没有复杂的源程序源代码算法,但是通过一些简单的例子反映了C语言最本质的东西。让我看到了计算机的底层实现的细节,从而让我对以前犯过的编译Bug有了更加深入的了解。关于这方面我有几个印象很深刻的细节。比如:以前只是粗略地记住了补码和原码的换算,现在知道了C语言中整型数编码的具体方式,范围是不对称的,还有定量研究过它是怎样溢出的,同时掌握一些整形数据之间的四则运算的溢出,即无论怎样它都从第N位截断,并且知道了怎样去检测这种溢出,这让我对数据溢出更加的小心,还知道了一些类型强制转化时候具体是怎样转换的,什么时候对结果有影响什么时候没有,以前不清楚的数据溢出得到了很好的机器级解释。

 

以前C语言中学的很模糊,只知道概念的位运算在这门课中体现了较大的作用。通过位运算可以很轻松地实现2的幂次的乘法除法,大多数机器的移位和加运算要比乘法运算快的多,但是还是要注意数据溢出的问题,可以对溢出进行修正,还要对整形数据的存储有充分了解才可以使用这种方法。还有逐位的 Xor运算是加运算的一种。它可以很方便地用来表示棋盘上棋子的位置,统计一个机器字的二进制表示中“1”的个数,用来表示较小的集合,用来表示多项式:。

 

学会了一些使用的工具,比如说时间戳计数器可以对程序运行计时从而测评程序的性能和测量系统性能。时间戳计时器本质是一个特殊的64位寄存器,每个时钟周期自动加1,可以通过ratsc指令来读取。

 

其次,这本书让我对汇编语言有了一些初步的接触与了解。汇编语言虽说不太方便,但也是非常重要的。它主要用于分析存在bug,高级语言执行模型失效时的程序行为,程序性能调优中找到程序低效的根源,实现系统级软件而且编译器以机器码为最终目标代码。我学会了一些比如说,知道了基本数字编码的步骤,怎样用编程实现机器码的文字表示,知道了整形数据浮点型数据字符串的机器表示,不同的机器使用完全不同的指令和编码方式,然后最核心的就是学习了一些基本的和C语言一一对应的汇编的语法。并且通过汇编语言语法的学习,对计算机底层实现也有了更深入的认识,比如说知道了很多算术,数据结构,条件,循环,数据调用,函数调用,递归调用,存储的管理,return之类的基本语法知识,知道了一些特殊类型的计算机存储方式,就可以对程序优化有作用,而且还可以避免一些buffer overflow带来的潜在的bug。

 

posted on 2018-04-04 20:37  一只咸鱼emmm  阅读(542)  评论(1编辑  收藏  举报

导航