刚刚又浪费了很多时间做无聊的事,现在赶紧开始努力!
《编程珠玑》,从图书馆看到过,一直比较喜欢看这种不是很专业的书。做个笔记。
从最底层开始做起,从最基层学起。
程序艺术家成长过程:1.熟练使用一门语言。2.精通某个平台的接口,如win32api。3.了解某个平台的底层。4.在平台上进行深层次的开发。5.体系结构的设计。其中思想的转变时很重要的!
以机器的思想来考虑问题。我就是程序,程序就是我。
具备开放性思维,对技术不应抱有偏见,掌握任何相关的技术,在到高手的时候会发现其实他们是相通的。
雄心的一半是耐心,玩程序,从开始玩到老去。
心得:他们不过是比我早生二三十年,好在我生的不算太晚,现在的事就是要努力学基础,将这些年发展的技术什么的学会,然后才能做那些创造性的事。
一直以为程序员就是晚睡,就是熬夜,就是青春饭。现在看来不然,要保持正常的生活节奏,12点之前睡觉,早上7点起。这样才能有精神和精力去学习,不是么。
有耐心去积累基础的东西。只有这样在以后才会对整个的结构以及本质有深刻的理解,做到,物我合一!
成对编码的思维:括号成对,分配空间和析构空间成对。
分块的阅读程序。
注释是非常重要的,同样重要的还有程序的设计理念,方法,思路。
不会调试的程序员永远成不了高手!
将一个问题拆开来思考,就是基本的开放性思维。
动态库的思想,编译器产生代码的方法决定了要使用动态库,方便升级。
不存在没有bug的编译器。
程序设计流程:拆出模块。然后进行砍分,注意接口和注释。然后从简单的模块开始一个个实现。
可预测性,从错误判断是哪里产生了错误。需要了解代码从汇编级都做了哪些事情,怎么做的。
外部中断为“中断”,内部中断称为“异常”。
进入保护模式非常重要的不仅是CR0置为1,并且需要修改寄存器的值,否则和实模式没有什么区别。也不会死机。但同样的方法不能用于分页,否则会死机。
//明天继续探索这个“貌似”很神秘的世界!(我很喜欢他这个“貌似”词,体现出了我学计算机前后的心情O(∩_∩)O~)
cpu计算地址的方式在实模式和保护模式中是一样的,只不过看的见的部分被当成了选择子,到描述符表中寻找 看不到的部分,然后再移位形成新地址到内存寻找内容。
作为一个高手,必须要了解计算机的过去现在,这样才能预测将来。历史是个很有意思的东西。
任何程序编译出来都是要和平台有关系,脱离了平台,就没有任何的意义。
引用也是地址(这句话我不太理解),只不过在编译的时候编译器加上一个自动搬移的过程,把相应的值搬过来。引用作参数结束时会
自动搬回去,这个是自动的。
编译器:一个把你的想法变成内存中映射的东西。
连接器的原理是根据符号的不同通过来区别的。(不懂)
事实上:重载是在编译器编译的时候被编译器换名了。(那模板呢?得换多少名字)
C++中所有类成员函数都是不能取地址的,除非是静态函数,(静态函数在实质上还算是成员函数么)
解释程序就是一个字符串的解释器(不懂)