编译原理与实践答案
Ⅰ 如何深入C
依我之愚见,c、c++都要学的,应用领域各不相同。
千万千万别中M$的计——要学真正的编程,不要去看MFC,MFC是你掌握了编程的思想以后进行快速开发的一个工具。
platform sdk也不是神域,他也只是让你进入可视领域的一个平台。
学了MFC可以做linux程序吗?学了platform sdk就能写游戏吗?就算都学会了,你明白你用的编译器是怎么把一堆文本就编译成一坨二进制?如果让你写一个IIS服务能找到头绪吗?
这些问题给你提出来,主要希望你思考一下到底应该学什么。
应该学什么?
数据结构、算法;这些都是无止境的东西,别指望都学了。
编译原理、单片机(学它如果不是为了工作需要就是为了从中掌握CPU怎么样工作的),还有,我的天,我怎么能穷举的完呢?
我是做游戏的,工作中发现很多东西都是大学的时候没学到的。学的时候及时补课。比如设计脚本系统就要用到编译技术和虚拟机技术,还有受限内存下的设计模式等——对,设计模式一定要看,设计模式是前人,是强人在行路中给你总结出来的解决某种办法的具体方式,一定要看看GOF(四人帮)的Design patterns。
英语一定要够硬,西法语根据兴趣自己学一个,工作中很有用,看英文文档不求人是很舒服的。累了IRC一下,和老外唠唠嗑,掌握一些最新的资讯。
不说太多,the bottom line is, learn the spirit of programing.
http://www.gougou.com
搜索关键字“MIT”,有算法导论等麻省的课,英语要好。
其他资源也可以在其中搜到。多学吧。
本人是做手机游戏开发的,接触的都是一些嵌入式开发。如果感兴趣的话,建议你买个arm 6开发板,多练练。symbian上C是很好用的。
单片机当然也用到c,keil c。
其实,无论怎么说,理论+实践才是王道
《操作系统概念》
《编译原理与实践》
《算法》
《thinking in c++》
《数据结构》
。。。
Ⅱ 编译原理及实践(Kenneth C.Louden 冯博琴等翻译)的答案
ah you eat shit!
Ⅲ 编译原理设计题目8——SLR(1)分析法
以前做过的不过昨天因为毕业了把机子上了一些资料也删除了
1刚好这个也在里面。。。。。。。。。
Ⅳ 用C语言实现CRC校验:要求 1) 分别编写函数实现编码、解码的子函数 2) 对给定的任意先序序列进行编、解码
建议看一下《编译原理与实践》一书。
将源语言代码译为汇编语言代码,接下来的事情交给汇编器,它将汇编代码汇编为对应平台的机器码。
Ⅳ 求中南管理学教材课后习题答案以及历年考试答案
http://www.10xiao.com/
· (第三册)新视野大学英语视听说教程答案及录音原文
· 《马克思主义基本原理概论》复习思考题参考答案
· 毛邓三课后思考题答案
· 新视野大学英语读写教程第三册答案
· (第一册)新视野大学英语视听说教程答案及录音原文
· 西方经济学习题答案(宏观部分)(高鸿业版)
· 《思想道德修养与法律基础》的课后答案
· 新视野大学英语读写教程第二册答案
· (第二册)新视野大学英语视听说教程答案及录音原文
· 西方经济学(第三版)习题答案
· 新视野大学英语读写教程第一册答案
· 中国近代史纲要(高教版)课后答案完整版
· 电工学第六版(秦曾煌)课后答案
· 西方经济学习题答案(微观部分)(高鸿业版)
· 新视野大学英语读写教程第四册答案
· 机械设计基础答案(第五版)(1~6章)
· 西方经济学习题解答
· (第四册)新视野大学英语视听说教程答案及录音原文
· 大学物理练习册解答
· c++语言程序设计习题答案(1到7章)
· 《经济学原理》答案(上册微观部分)
· 《管理运筹学》第二版习题答案
· 《电力电子技术》(第四版)课后习题答案
· 《普通逻辑》练习题参考答案
· 《财务管理学》习题参考答案
· 离散数学(高等教育出版社)习题答案
· 线性代数习题参考答案
· 《货币银行学》习题答案
· 机械设计基础答案(第五版)(7~18章)
· 全新版大学英语第二册综合教程练习答案
· 《现代西班牙语》第一册讲解及答案
· 市场营销学习题及答案
· 微观经济学习题答案
· 《管理学》课后答案(周三多)
· 高等数学(上)习题答案及提示
· 《会计学原理》习题答案
· 普通逻辑课后习题答案
· 单片机原理及应用答案
· 《管理运筹学》习题答案(第二版)(韩伯棠教授)
· 概率论的基本概念习题答案
· 《国际贸易》习题答案参考
· 《计算机网络》习题解答(谢希仁版)
· 《微机原理及接口技术》习题参考答案
· 生物化学(第三版)课后习题详细解答
· 《统计学》(第二版)课后答案
· 工程光学习题答案
· 计算机网络(第4版)习题答案(中文版)
· 有机化学习题解答第九章(徐寿昌版)
· 《大学英语自学教程》(上册)课后习题答案
· 《现代西班牙语》第二册讲解及答案
· 《微机原理及应用》习题答案
· 有机化学习题解答第十章(徐寿昌版)
· 计算机操作系统教程课后习题详解
· 无机化学习题答案(第三版)
· 《政治经济学》课后习题答案
· 21世纪大学英语第1册读写教程课后答案
· 高等代数习题答案(北大版)
· 《模拟电子技术基础》习题解答
· 罗森财政学第七版(英文版)课后答案
· 《遗传学》朱军主编课后习题答案
· 《理论力学》习题参考答案(1~2章)
· 《数据结构》习题答案
· IBM-PC 汇编语言程序设计习题答案
· 外国学生做的数学题(搞笑)
· 统计学习题答案
· 有机化学习题解答第十二章(徐寿昌版)
· 有机化学习题解答第六章(徐寿昌版)
· 有机化学习题解答(汪小兰版)
· 古代汉语习题及参考答案(上册)
· 《理论力学》习题参考答案(3~5章)
· 大学英语精读第2册课文翻译
· 数据库系统概论习题答案(第三版)
· 有机化学习题解答第二章(徐寿昌版)
· 《国际金融学》习题答案
· 《管理学——原理与方法》课后习题答案
· 有机化学习题解答第十三章(徐寿昌版)
· 《管理信息系统简明教程》答案
· 《单片机原理与接口技术》习题集答案
· 《2009版考研数学复习指南》课后习题详解(陈文灯)第三
· 《中级财务会计》课后习题答案
· 《软件工程基础》习题集及答案
· 《财务分析》答案(第二版)
· 《全新版大学英语阅读教程》1-2册课后练习答案
· 模拟电路课后习题全解第一章
· 物理学(五版)马文蔚版 课后答案
· 阎石《数字电子技术基础》第四版习题解答
· 模拟电路课后习题全解第二章
· 信息论与编码习题答案
· 《数字信号处理》习题答案
· 会计习题答案
· 有机化学习题解答第十一章(徐寿昌版)
· 电机学习题答案(张松林主编)第二部分:变压器
· 有机化学习题解答第八章(徐寿昌版)
· 细胞生物习题答案
· 有机化学习题解答第三章(徐寿昌版)
· 《财政学》习题集答案
· 光学教程答案第一章~第三章
· 计算机组成原理课后习题答案
· 经济法基础理论习题参考答案
· 《语言学概论练习题》答案
· c++语言程序设计习题答案(8到13章)
· 《高分子化学》习题与答案
· 有机化学习题解答第十五章(徐寿昌版)
· 有机化学习题解答第四章(徐寿昌版)
· 自动控制原理答案
· 数字电路答案
· 有机化学习题解答第十六章(徐寿昌版)
· 国际贸易理论与实务答案
· 全新版大学英语阅读教程一(通用本)练习答案
· 《语言学概论》习题答案(新版,自考)
· 成本会计习题答案
· 数字图像处理第二版中文版(冈萨雷斯)的习题答案
· 《高等数学》总习题答案
· 《二级C语言》课后习题参考答案
· 机械原理习题解答
· 电机学习题答案(张松林主编)第一部分:直流机
· 单片机习题答案
· 有机化学习题解答第十四章(徐寿昌版)
· 现当代文学习题参考答案(第一章至第四章)
· 《数据库原理与应用》习题答案
· 《国际贸易实务》习题的解答
· 《数字逻辑电路》习题参考答案
· 现当代文学习题参考答案(综合练习)
· 《中国新闻传播史》笔记
· 有机化学习题解答第五章(徐寿昌版)
· 《组织行为学》答案
· 《语言学教程》课后答案
· 《金融市场学》答案
· 《公共关系学》作业参考答案
· 《工程材料》课后习题答案
· 刑法提纲资料
· 《计算机英语》参考译文和练习答案
· 工程热力学(第三版)课后习题答案第一章~第四章
· 《政治经济学》习题答案
· 《操作系统》课后答案(西电汤子赢)
· 研究生英语 多维教程翻译(第二册)
· 中国古代文学作品选(一)课后题答案
· 模拟电路课后习题全解第六章
· 第六章 完全竞争市场习题答案
· 《机械原理》课后习题答案
· 有机化学习题解答第七章(徐寿昌版)
· 高等数学(下)习题答案及提示
· 《电动力学》习题答案
· 大学计算机基础教程答案
· 测控电路习题答案(机械出版社)
· 罗宾斯《管理学》习题答案
· 机械制造技术基础习题答案
· 电磁场 第二章
· 模拟电路课后习题全解第三章
· 传播学教程课后习题答案
· 模拟电路课后习题全解第九章
· 《编译原理》课后习题与答案
· 外国教育史课后习题答案
· VB高教版课后答案
· 《初级财务会计》习题答案
· 有机化学习题解答第十七章(徐寿昌版)
· 《中国教育史》习题答案
· 让人上吊的计算题
· 《普通化学》(第二版)习题答案
· 网络信息安全习题及答案
· 陈传璋《数学分析》答案第四篇多变量微积分学
· 水力学课后习题解答(全)
· 计算机英语(第2版)译文
· 《旅游学概论》习题参考答案
· 模拟电子技术教程答案
· 固体物理学习题答案
· 光学教程答案第四章~第八章
· 模拟电路课后习题全解第七章
· 《数据库应用》课程答案
· 分析化学思考题的参考答案
· 合同法学课后习题案例参考答案
· 人力资源管理课后练习参考答案(选修课)
· 模拟电路课后习题全解第八章
· 模拟电路课后习题全解第四章
· 电子电路分析与设计 课后题答案
· 大学化学习题解答
· 《2009版考研数学复习指南》课后习题详解(陈文灯)第一
· 电力电子课后答案
· 《微观经济学:现代观点(第5版)》(ch1~ch5)习题答案
· 法律基础习题答案
· 陈传璋《数学分析》答案第二篇单变量微积分学
· 《微观经济学:现代观点(第5版)》(ch31~ch35)习题答
· 《2009版考研数学复习指南》课后习题详解(陈文灯)第二
· 电力系统习题答案
· 陈传璋《数学分析》答案第一篇极限论
· 《计算机应用基础》课后习题与答案
· 《微观经济学:现代观点(第5版)》(ch26~ch30)习题答
· 计算机系统结构习题解答(清华2版)
· 资产评估习题及答案
· 微积分(下册)课后答案
· 汽车构造习题集答案
· 高等数学(中)习题答案及提示
· 执政党建设概论课后答案
· 建筑材料习题集答案
· 电机学习题答案(张松林主编)第三部分:交流机
· 高等化工习题答案第一章
· 《广告学教程》习题答案
· 世界历史简答题答案
· 《全球视角的宏观经济学》习题答案
· 《ASP.NET程序设计》习题答案
· VB语言程序设计课后习题答案
· 无机及分析化学原理和应用习题参考答案
· VF教材课后题答案
· 模拟电路课后习题全解第五章
· 《生理学》习题参考答案
· 基础上机实践习题及答案
· 矩阵及其运算课后习题答案
· 电磁场习题解第一章 矢量场
· 生理学习题参考答案
· 信号与系统答案(第四版,吴大正)第一章~第二章
· 工程热力学(第三版)课后习题答案第五章~第八章
· 西方财务会计习题答案
· 《新编Visual Foxpro 教程》课后练习题参考答案.
· 水力学练习题及参考答案
· 二级VF教材课后习题答案
· 《热学》习题答案第五章热力学第一定律
· 电子测量与仪器习题答案
· 《热学》习题答案第一章温度
· 信号与系统答案(第四版,吴大正)第七章~第八章
· 《婚姻继承法》习题集参考答案
· 《现代教育原理》课后练习答案
· 形式语言与自动机课后答案
· 《计算机应用基础.S》课后习题参考答案
· 信号与系统答案(第四版,吴大正)第三章~第四章
· ASP动态网站开发教程(第二版)习题答案
· 《无机化学基础》习题解答
· 电磁场习题解 第四章 恒定磁场
· 工程热力学(第三版)课后习题答案第九章~第十四章
· 森林生态学习题及答案
· 数据与计算机通信课后习题答案
· 信号与系统答案(第四版,吴大正)第五章~第六章
· 开放专科计算机应用基础(XP)课后练习及答案
· 路基路面工程习题答案
· 《高等教育学》课后习题及答案
· 陈传璋《数学分析》答案第三篇级数论
· 《计算机绘图》习题集答案
· 《热学》思考题答案
· 《热学》习题答案第三章气体分子热运动速率和能量的统
· 《算法导论》课后习题答案
· 高等化工习题答案第四章
· 人力资源管理师二级考试指南答案
· 电磁场习题解 第三章 恒定电流场
· 新闻学基本原理课后习题答案
· 异步电动机习题参考答案
· 高等化工习题答案第五章
· 财政与金融课后习题答案
· 《公文写作与处理》课后习题参考答案
· 领导科学课后练习及答案
· 《应用语言学概论》课后练习及答案
· 自动控制原理习题答案第二章(胡寿松)
· 《热学》习题答案第六章热力学第二定律
· 电磁场习题解第六章 平面电磁波
· 电磁场习题解 第五章 时变电磁场
· 研究生英语 多维教程课后答案(下册)
· 《特种加工》习题解答
· 国际商事仲裁法习题及参考答案
· 《热学》习题答案第二章气体分子运动论的基本概念
· 激光原理及应用习题答案(陈家璧版)
· 《分子与细胞》课文解析及课后答案
· 《食品营养与卫生学》习题答案
· 《微观经济学:现代观点(第5版)》(ch6~ch10)习题答
· 机械课程设计说明书
· 《微观经济学:现代观点(第5版)》(ch21~ch25)习题答
· 电磁场习题解 第八章 电磁辐射与天线
· 电磁场习题解第七章 导行电磁波
· 财政收入概述习题答案
· 高等化工习题答案第二章
· 自动控制原理习题答案第三章(胡寿松)
· 《媒体与广告》课后答案
· 自动控制原理习题答案第五章(胡寿松)
· 《微观经济学:现代观点(第5版)》(ch11~ch15)习题答
· 《微观经济学:现代观点(第5版)》(ch16~ch20)习题答
· 新闻评论课后答案
· 自动控制原理习题答案第七章(胡寿松)
· 自动控制原理习题答案第六章(胡寿松)
· 新概念力学习题答案
· 广告摄影课后题及答案
· 自动控制原理习题答案第四章(胡寿松)
· Operating SyStems Concepts课后答案
· 《热学》习题答案第四章气体内的输运过程
· 机械装配技术习题参考答案
· 组合数学课后答案
· 北林函授林专有机化学习题答案
· 土地经济学习题答案
· 动物外科手术习题答案
· 《塑料模塑成型技术》习题参考答案
· 住店期间服务习题答案
· 呼吸系统习题答案
· 《热学》习题答案第八章液体
· 《数量方法》习题参考答案
· 《热学》习题答案第七章固体
· 《局域网组建与管理培训教程》习题答案
· IDS习题答案
· 《有机化学》[9~10章][曾昭琼]习题答案
· 《有机化学》[11~20章][曾昭琼]习题答案
· 《有机化学》[1~5章][曾昭琼]习题答案
· 《环境化学》课后习题答案
· 《动物学》课后习题答案
· 《有机化学》[6~8章][曾昭琼]习题答案
Ⅵ 第二版计算机科学导论的答案
计算机科学与技术专业 相对来说应该是计算机方面专业中最热门的了
清华大学有全国第一的计算机科学与技术专业
大多学校的 计算机科学与技术专业都是差不多的 当然也有适当的区别
在这里摘录华中科技大的该专业培养方案(仅供参考)
计算机科学与技术专业本科培养计划
一、培养目标
培养德、智、体全面发展,具有系统、扎实的信息学科和计算机学科的理论基础,在信息的获取、传递、处理及应用等方面,具有较宽广的专业知识和实践动手能力的研究型、复合型人才。毕业生具有良好的人文素质、创新精神和较强的英语能力,能在信息技术产业,科研部门,高等院校及其相关领域从事信息科学与技术的研究、设计、开发及管理等方面的工作,并可继续攻读计算机科学与技术、相关学科与交叉学科的硕士学位。
二、基本规格要求
1、 具有较扎实的信息学科所需的数理基础;
2、 掌握信息学科、计算机科学与技术的基本理论和方法;
3、 具有研究计算机科学与技术领域理论问题和解决实际问题的能力;
4、 了解信息学科、计算机学科的发展动态;
5、 具有较强的英语语言能力;
6、 掌握文献检索、资料查询的方法和撰写科学论文的能力;
7、 具有较好的人文社科知识和人文素质,以及较强的协调、组织能力;
8、 具有较强的创新精神。
三、培养特色
以数理为基础,以信息学科为平台,以计算机科学与技术为方向,以培养创新能力为重点,面向系统,兼顾应用,软硬结合,计算机科学与计算机工程并重。培养在计算机系统结构与计算机网络系统、软件系统、计算机工具与应用支撑环境的研究、分析、设计、开发和工程组织等方面具有综合能力的复合型人才。
四、主干学科
计算机科学与技术
五、学制与学位
修业年限:四年
授予学位:工学学士
六、学时与学分
完成学业最低课内学分(含课程体系与集中性实践教学环节)要求:200
七、主要课程
离散数学 数据结构 汇编语言程序设计 数值分析 操作系统原理 微机接口技术 数据库系统原理 计算机组成原理 计算机通信与网络 编译原理 计算机系统结构 软件工程
八、主要实践教学环节(含专业实验)
C语言课程设计 数字逻辑课程设计 数据结构课程设计 汇编语言课程设计 操作系统课程设计 计算机组成原理课程设计 微机接口技术课程设计 数据库系统课程设计 编译原理课程设计
参考资料:华中科技大计算机科学与技术专业本科培养计划
Ⅶ C语言学生成绩管理系统有一个功能不会写。。求助各位大神
程序如下,没有调试过,可能会有一些无关紧要的语法错误,请留意注释的位置:
#include<stdio.h>
#include<string.h>
#include<process.h>
#include<conio.h>
#defineN30
#defineM4
typedefstructstudent
{
charnumber[10];
charname[20];
floatscore[M];
floataver;
}STU;
STUstu[N];
intn;
//注意这里
charclesses[][80]={
"C程序设计",
"编译原理与实践",
"离散数学",
"PLC"};
voidinputscore(void);
voidsavescore(void);
voidavergescore(void);
voidmodifyscore(void);
voidlookscore(void);
voidsearchscore(void);
voidadd(void);
voidmodify(void);
voiddelscore(void);
voidmenu(void);
//注意这里
voidclasses_list(void)
{
inti;
for(i=0;i<M;i++)
printf("%d%s ",i,clesses[i]);
}
//注意这里从stu数组中的前n名学生中统计编号为index的课程成绩在[min,max]区间内的人数
intcls_filter(STU*stu,constintn,constintindex,constfloatmin,constfloatmax)
{
inti,cnt=0;
for(i=0;i<n;i++){
if(stu[i].score[index]-min>=1e-6&&max-stu[i].score[index]>=1e-6)
{
cnt++;//统计人数
printf("%s ",stu[i].name);//输出符合条件的人员姓名。
}
}
printf("Total:%d ",cnt);
returncnt;
}
voidmain()
{
shortintflag=0;
//注意这里
intindex;
floatmax,min;
menu();
do
{
flag=1;
switch(getch())
{
case'1':inputscore();break;
case'2':lookscore();break;
case'3':searchscore();break;
case'4':modify();break;
case'5':add();break;
case'6':delscore();break;
case'7':savescore();break;
case'8':exit(0);
//注意这里
case'9':
clesses_list();
printf("请输入课程的编号(0~%d):",M-1);
scanf("%d",&index);
printf("请输入最低分:");
scanf("%f",&min);
printf("请输入最高分:");
scanf("%f",&max);
puts("课程%s在[%f,%f]区间内的学生名单: ",clesses[index],min,max);
printf(" 共有%d名学生 ",cls_filter(stu,n,index,min,max));
break;
default:printf("输入有误 ");}
printf("按任意键继续 ");
getch();
menu();
}while(flag==1);
}
Ⅷ 读书活动个人读书方法总结
读书活动个人读书方法总结
书是智慧的翅膀,书是我们人类最宝贵的财富。在学校组织的营造书香校园系列活动中,为了给学生营造一个书香环境,为了让每一个孩子都与书交朋友,为了激发他们读书的兴趣,让他们想读书、爱读书、会读书,从小养成热爱书籍、博览群书的好习惯,我班主要做了以下系列工作:
一、阅读时间,得到保证
1.每两周安排一节课外阅读指导课,主要是利用早读进行必要的指导。
3.回家后学生自主阅读40分钟,并做好读书笔记。基本上每周两次摘记。
二、为学生提供了阅读交流和展示的平台
1.生生共读。每天利用课余时间最少进行四十分钟的阅读,并进行读书心得交流。
2.师生共读。从老师自身做起,以身作则,每天做到和同学们一起读书。师生同读一本书,在班上讲故事相互交流。
3.教给学生掌握几种常见的阅读方法:一是精读法,要求每分钟读200字以上,理解率在90%以上;二是略读法,要求每分钟读200~400字之间,理解率在80%左右;三是快读法,能一目十行法,要求每分钟读400字以上,理解率达到70%。
4.指导学生针对性的阅读。
(1)告诉学生读书要在心中有个自读提纲:比如①看见了题目你想到些什么②读后你知道了什么还想知道些什么③你还有哪些不明白的问题要求学生做到眼到心到。
(2)然后重点强化“不动笔墨不读书”的方法:①圈点勾画。即用相关的符号在书上记录下自己阅读时的见解、感受。②做批注。即在文章旁边写出自己的见解和感受。
5.布置实践性作业,锻炼实践能力。为了检查学生的阅读质量,开展相应的活动。如利用读书卡开展“向你推荐一本好书”、“读书心得”等内容,让学生联系实际谈读书心得,大家一起进步。通过读书笔记、手抄报让学生展示从课外阅读中获取的知识。
三、阅读内容,得到落实
1、发挥班级读书角的作用。鼓励每位学生从家里拿五本书来,和学生交换看,丰富读书资源。
2、利用好语文同步阅读。和课文配套的同步阅读我们都要求学生能阅读好。
3、利用好校本教材《国学》,进行经典阅读。
有付出必有收获。一学年来,学生读书并没有多少可供量化的成果,但从很多学生的写作水平的逐步提高就可见端倪了。雨果说:“书籍是改造灵魂的工具。”确实好书就如同是好的生活教科书,它能够教人怎样做一个正直的人。我相信,随着时间的推移,只要学生能在老师的引导下,变得热爱读书了,变得喜欢思考了,学会怎样做人了,就是他们读书后最大的收获。
个人读书方法总结2
不过看这个的前提是:每个人的读书习惯都是不同的,不要随便“全盘”拿别人的习惯来培养自己的习惯,找到合适自己的才是最重要的。“全盘”二字重点,不要全盘接受别人的习惯。我下面所说的也不一定是读到我文章的人所需要的。
我的读书方法,一些是我爸爸培养的,一些是我以后总结的。
1、挑选合适的时间连续阅读。
我也一样不推荐计划阅读。看了Jun Yang的文章,在这一点有些共鸣。
C专家编程的作者Peter Van Der Linden曾经玩笑的解释“什么时候数组与指针相同”这个标题的时候说:
The C Programming Language,第二版(K&R)99页的底部是:
作为函数定义的形式参数,
然后翻到第100页,紧接前一句,
char s[]和char* s是一样的。
呜呼,真是不幸,这么重要的一句话竟然在K&R第二版种被分别印在两页上。
嗯,如果按计划看这样的书,恰巧看到99页,而不看100页,那么100页的关键部位岂不是看不到?呵呵,玩笑。
毕竟连续阅读头脑才有印象。看书不是锻炼,看书不是锻炼记忆力,获取书本知识不能“量化”。
2、快速浏览,然后多看几遍。
这个是我爸爸在我小时候就给我提的,我接受了这个建议到现在。他给我说:书你一遍看完就掌握其中重要的内容是不现实的。但是在掌握之前要有个大概的印象,掌握这个印象的方法就是快速浏览,不要知道某些条目是为什么,需要研究的重点就记下来,第二次看的时候再去仔细看,能理解多少就是多少,第一次要以看完为目的。而真正掌握,是随后的通读,有了第一遍的基础,随着看这本书的次数增加,看书速度会越来越快,因为头脑里早已经知道那些是没有掌握的,已经掌握的就会快速略过,但是会加深印象。此后可以带着实际问题从新来翻阅该书,会有更深的理解。《C++Primer第三版》潘爱民老师翻译的版本,我在2002年购买到现在看了不知道多少遍了。从最初的花了近3个月的浏览第一遍,到现在的可以花一天就可以通读一遍。期间给我带来了不少好处。
曾经非常非常不待见这种方法,自从亲身使用过好感到确实是好方法。特别是一些技术书籍,尽管你第一遍看的很仔细,你仍然不能记住对你来说第一次接触到的概念,读多了(可能跟艾宾浩斯曲线有关吧),记住的概念多了,也就更好理解了。
3、学会记忆也要学会忘记。
记住重点,尽量忘记细节。甚至记住哪本书可以找到这个概念就够了,然后忘记它。每个人对待书的态度不同的,或许与自己的成长经历有关。我的习惯是,记住重点,想了解细节再去查。学会记住很难,其实学会忘记也很难。有时候记忆是一种负担,日积月累会很沉重,不用的知识会越来越多,而且书承载的是作者他的想法,看书在吸收知识的时候,无形中也在被作者所“干涉”思想。但模仿的过程是学习的重要过程,但脱离不了模仿就不能成为自己的思想和知识。学会查是一种重要的手段,还是《C++Primer》,前几天我还就构造函数和析构函数的细节,特别对多继承的析构函数作为重点仔细看了一下,有时候一些类似常用的概念,有很多种形式,平时也就用最常用的,那些不常用换言之特殊的概念,能查就可以了。嗯,看了Jun Yang的第二点,他说“知识存储机器”,呵呵有些夸张了。不过也可以理解他这么说,上面我已经提到书本给我们带来的负面影响了。
“看书”而不是“读书”,读书也是中国常用词语。英语就是read book。很多人都喜欢用嘴去“读”书,或者边看书边自言自语。这是不太好的一个习惯,读是一种干扰人思维的方式。语言虽然能加深记忆,但会影响思考。
4、不要“太”强迫自己。
不喜欢就不要看,看不进去可以极端的选择干脆不看,或者隔一段时间再看,或者静下心来的时候再看,或者换一本同类的书,按照自己需要的知识点来寻找书籍。曾经和朋友交流过,他说《编译原理》也就是那本经典的“龙书”,虽然他也知道很好,可怎么也看不进去,不知道为什么。但是看《编译原理与实践》,他很容易的就看进去了,之后,他根据掌握的编译原理写了一个汇编语言的代码着色器,可以生成UBB代码和HTML代码。
我为什么要突出不要“太”强迫自己这个“太”呢?有时候也需要强迫一下自己,不能太随性,也得掌握一个度。有时候很重要的概念书籍,看起来是很枯燥的,朋友建议看的书,可能有他受益过的地方。比如我看《Structure and Interpretation
of Computer Programs(SICP)》,就是那位只能看《编译原理与实践》的朋友推荐我看的,北大裘宗燕老师已经翻译为中文版。经典的SICP是用Lisp描述的,一本古老的介绍functional编程的书。看一点就感觉很乏味,但稍微强迫一下自己,就知道这本书的优异之处。我就是看了求解费波那契数列的使用递归,以及递归优化那一章,对我以后写任何语言递归的分析,受益那是一辈子的。比如C++之父写的书,就被公认的哲学味太浓,不适合绝大多数人阅读,但我就很喜欢看,书本就是这样,因人而宜,就像配偶一样,自然有适合自己的一位。
5、有时候需要追根溯源一下,有时候需要换一种角度来看书。
下面是来自:Bejarne Stroustrup在《C++语言的设计与演化》里面有关“引用”这个概念的提出时候的细节,更多的描述见该书裘宗燕老师翻译的版本第56页和第57页:
引入引用机制主要也是为了支持运算符的重载。Doug McIlroy还记的,有一次我向他解释某个预示了目前运算符重载模式的问题。他用的术语引用挑起了我的思绪,我嘟囔了一声谢谢就离开了他的办公室。当我第二天再出现时就带着已经基本完成的目前模式。Doug使我想起了Algol 68。
现在引用机制得到了大家认可,一些崇尚C语言高效,但有些抵制C++的牛人们也称赞了它,这是C++优于C的地方。这里不是讨论语言的,关于这些我就不再多说了。自从我看了这一段话之后,我头脑中所记忆的引用的概念就是“为了支持重载运算符而添加的机制”。嗯,现在可以在很多书或者文章里找到解释这个引用字眼,引用也不仅仅只用在“重载运算符”上。不过追根溯源看了重载运算符这里,什么时候该用指针,什么时候该用引用,我自认为写的代码里用的还算合适。中国人非常喜欢对某个知识追根溯源,如果时间允许的话这是好事,从源头找起,更有助于加深理解。
6、做笔记只是手段而不是最终目的,总结为自己的思想才是最重要的。
看书的最终目的,就是吸收书本知识,成为自己的思想。我个人不喜欢做笔记,我也不喜欢批注,我就喜欢一遍遍的看书。但记住,这是我个人的喜好而已,我父亲40岁之前看书就喜欢做读书笔记,而且很喜欢用没有条格的速写本做笔记,但是现在年龄大了看书多反而不去做笔记,喜欢小批注。喜欢做笔记的人,一般是喜欢把自己想要知道的重点记录下来,可以省却再次阅读书本的时间。或者用纸张记录自己的观点,给自己做自我总结。这是好习惯,但是我自己就是不喜欢,哈哈:)。我喜欢用我头脑需要的概念在头脑中总结,哪怕挑重点的再把这本书看两遍。以前研究COM的时候做过一段时间的笔记,后来逐渐就放弃了。
7、看到好书后不能读死书,更不能信奉为“天书”。
看书后不能白看,多多的反思自己,然后有批评的眼光看待这本书,看待自己甚至别人的观点或者代码。很早就感悟到“适度”的重要性,尽量不走极端,包括批评本身。但不知不觉就会慢慢走向极端,这时需要适度的修正自己,应用书本的知识。我听到过许多别人的话,比如C/C++已经过时,JAVA才是最先进的,或者C#有多么多么先进,或者UNIX哲学一派,面向对象就是些花哨的东西C语言就足够用了。这类极端的话有些是自己想的,但绝大多数是人云亦云的跟风和受书本的影响。说JAVA先进的,我会问他,你能用JAVA写操作系统嘛?说面向对象花哨的,我会拿出一些C语言很不容易编写的方面给他看,比如3D游戏。听到我的话这些人会闭嘴的,总有长处和短处存在。知其然,知其所以然。
8、书面知识是死的,实际应用才是活的,根据自己的需要,活用参考书。
有些书涉及的知识面很广,比如参考书,通读真的很难。如果条件允许的话,寻找一些实际的问题看书,会更好的理解。为了工作,我曾经就快速排序做过研究,也和许多朋友交流过。我带着这个问题翻看了许多算法书籍,包括《计算机程序设计艺术》《C算法》《编程珠玑》之类的经典着作,也参考了许多代码。《计算机程序设计艺术》很厚,我只取其中一章而已,这本书我没有看完,不过里面单独的几章,我看的很仔细。当然,我没看完也没资格给盖茨发简历.
9、给自己定位,你是否适合从书本获取知识。
我有个朋友,他几乎不看技术书,但是他的思维很开阔,很容易理解新概念和方法,我只需要和他说一说他随便上网看看资料就够了。他做的系统很耐用,我也不容易挑出毛病。看书反而限制他的思维方式,这点我拍马赶不上,我只能看看书,呵呵。所以说获取知识并不一定只有看书,朋友们的交流,网络上的论文和资料都是很好的资源。只给自己一个定位,是不是真的适合看书才能增长你的知识。记得以前和tinyfool有过一些交流,此人就是不需要看太多书籍的.人。
10、最好能和作者交流一下。现在互联网丰富,我们也可以通过邮件和作者交流了。
我研究快速排序的时候,曾经和Julian Bucknall,《Delphi算法和数据结构》的作者用电子邮件交流过,他给我指出了我理解上的偏差,让我受益匪浅。高山仰止,外加猜测理解,还不如直接去问作者。
最后,就用《论语》里的那句话来总结一下:学而不思则罔,思而不学则殆。
很赞,其中的几个建议也是我的习惯.
此外,我在学习一个知识点的时候,心中始终抱着一个目标,就是最终要能写出一篇很好的survey,这样一来在阅读思考的时候总是有意无意地在整理知识的结构,并且往深处想。我的实践表明这是一个很棒的技巧。
在楼主的基础上,补充几个我自己的读书习惯
1、在看新书的时候,就会拿几本一起联合着来看(而不管那其中的某一本书有多经典)。理解->总结->求交集->挑毛病->求证->结论或疑问(算是critical thinking的一种表现吧)
2、经常重复阅读。就是说,在这次开始读的时候,不是接着上次停掉的地方读,而是多向前覆盖一些,比如:一大段,几页,甚至前面的一整章。有时候还随机地翻开一本书来读,如果一旦发现找不到感觉,跟不上作者思路,就努力补充知识直到满意。
3、先在某些人面前表现得"强大"一些,然后为了弥补自己的过度膨胀,就必须要努力加倍地读书了……百试不爽的办法,呵呵,从小学时就这样干了
我的想法是,有时候换个角度从作者的角度来思考问题,比如说作者为什么要这么组织结构,作者是怎么说明某个问题的,这样思考的话,有时候会有意想不到的收获:-)
楼主说的很对,最近在看《算法导论》,症状基本和你说的差不多,刚开始时雄心勃勃,但过了一阵,效率降低很多,感觉楼主好像在说我,呵呵,开玩笑了。
前一段时间,为了自己的成就感,我只读书或者说只在意今天读了多少页,对于习题,做得不多或者做得不好。因为读书的时间相对于做题来说少的多,对于《算法导论》,你一个小时能看不少页,但当中的习题,有的一个小时根本做不完,因为你得思考。所以读书时的成就感大受打击,久而久之,就只看书,不思考了。当然,但我很兴奋的读完一章之后,发现自己的收获没有想象中的那么多。所以现在,自己把读书分为两个阶段--首先,对于一章,我会不看习题,一口气把它快速读完,这可以提高自己的成就感;之后,我会一节一节的细读、思考和做题,这期间自己的成就感很高(我一看完这一章了,呵呵),不过第二阶段的时间不宜过长,否则自己的成就感会降的很低,所以关键还得靠努力。这样用的时间或许很多,但收获也会很多。以上两个阶段,有点像预习、读书和复习。当然,这只针对于好书。一般的书,以增长见识为主。
个人读书方法总结3
一、 存疑。
要带着质疑的眼光去读书,不被作者的观点和思路牵着
鼻子走,任何事情都有特定的环境,任何观点都是辩证的,任何真理都是相对的,如果不抱着怀疑的眼光去看书思考,就会越看越迷惑,就会“尽信书不如无书”,无法获得真知。为了存疑,甚至可以强制自己对作者的观点去攻击一番,不把作者的观点驳倒不放手。
二、 精选。
尽量选经典和畅销书看,对难以读下去的书尽快丢进垃
圾桶。
三、 系统。
最好成系统地看书,围绕一个课题看书,在一段时间集
中看某一方面的书,通过对比、联系、发散、总结,形成对某个问题的较深入和全面的认识;
四、 浓缩。
每看完一本书都要浓缩成摘要,对好书最好回顾,做笔
记写心得,写出自己的概括,贴在书前,作为自己以后复习的内容。看一本消化一本,再看其他的书,以达到书越读越薄、能力越积越厚的目的;
五、 提纲。
但凡看一本书或者一篇文章,务必先看其目录或结构,
并记忆揣摩这个结构,如果是一篇文章,还可以先考虑一下作者会写一些什么。然后再看某段下边又写了几个层次,这样从宏观到微观逐步领会。在读完之后,再对自己感兴趣的内容进行重读精读;
六、 复习。
定时对看过的书和文章进行复习。
七、 带着问题去读书。
;Ⅸ 学习编译原理哪本书好
我们学校用的是《编译原理》与《编译原理与实践》这两本书,这两本书都是国外的教材。我觉得《编译原理与实践》这本书不错,自学应该能看懂,而且代码比较多,书最后还有整个小型编译器的源代码。
编译不好学,你就慢慢学吧。
下面的资料请作参考:
当代编译技术三大圣经级别的教材
1.龙书(Dragon book)
书名是Compilers: Principles,Techniques,and Tools
作者是:Alfred V.Aho,Ravi Sethi,Jeffrey D.Ullman
内容简介
《编译原理》作者Alfred V.Aho、Ravi Sethi和Jeffrey D.Ullman是世界着名的计算机 科学家,他们在计算机科学理论、数据库等很多领域都做出了杰出贡献。《编译原理》 是编译领域无可替代的经典着作,被广大计算机专业人士誉为“龙书”。《编译原理》一 直被世界各地的着名高等院校和科研机构(如贝尔实验室、哥伦比亚大学、普 林斯顿大学和斯坦福大学等)广泛用作本科生和研究生编译原理与技术课程的 教材,《编译原理》对我国计算机教育界也具有重大影响。 书中深入讨论了编译器设计的重要主题,包括词法分析、语法分析、语法制 导分析、类型检查、运行环境、中间代码生成、代码生成、代码优化等,并在 最后两章中讨论了实现编译器的一些编程问题和几个编译器实例,而且每章都 提供了大量的练习和参考文献。
与上一版相比,《编译原理》第二版进行了全面的修订,涵盖了编译器开发方面的最新进展。每章中都提供了大量的系统及参考文献。《编译原理》是编译原理课程方面的经典教材,内容丰富,适合作为高等院校计算机及相关专业本科生及研究生的编译原理课程的教材,也是广大技术人员的极佳参考读物。
作者简介
Alfred V.Aho,美国歌伦比亚大学教授,美国国家工程院院士,ACM和IEEE会士,曾获得IEEE的冯·诺伊曼奖。着有多部算法、数据结构、编译器、数据库系统及计算机科学基础方面的着作。
Monica S.Lam,斯坦福大学计算机科学系教授,曾任Tensilica的首席科学家,也是Moka5的首任CEO。曾经主持SUIF项目,该项目产生了最流行的研究用编译器之一。
Ravi Sethi,Avaya实验室总裁,曾任贝尔实验室高级副总裁TLucent Technologies通信软件的CTO。他曾在宾夕法尼亚州立大学、亚利桑那州立大学和普林斯顿大学任教,是ACM会士。
Jeffrey D.Ullman斯坦福大学计算机科学系教授和Gradiance CEO,他的研究兴趣包括数据库理论、数据库集成、数据挖掘和利用信息基础设施教学等。他是美国国家工程院院士、IEEE会士,获得过ACM的KarIstrom杰出教育家奖和Knuth奖。
第一版中文版
第二版中文版
2.鲸书(Whale book)
书名是:Advanced Compiler Design and Implementation
作者是:Steven S.Muchnick
内容简介
本书迎接现代语言和体系结构的挑战,帮助读者作好准备,去应对将来要遇到的编译器设计的问题。
本书涵盖现代微处理器编译器的设计和实现方面的所有高级主题。本书从编译设计基础领域中的高级问题开始,广泛而深入地阐述各种重要的代码优化技术,分析各种优化之间的相对重要关系,以及实现这些优化的最有效方法。
本书特点
●为理解高级编译器设计的主要问题奠定了基础
●深入阐述优化问题
●用Sun的SPARC、IBM的POWER和PowerPC、DEC的Alpha以及Intel的Pentium和相关商业编译 器作为案例,说明编译器结构、中间代码设计和各种优化方法
●给出大量定义清晰的关于代码生成、优化和其他问题的算法
●介绍由作者设计的以清晰、简洁的方式描述算法的语言ICAN (非形式编译算法表示)。
本书是经典的编译器着作,与“龙书”齐名,称为鲸书。书中针对现代语言和体系结构全面介绍了编译器设计与实现的高级论题,从编译器的基础领域中的高级问题开始,然后深入讨论了各种重要的代码优化。本书专为编译器专业人士和计算机专业本科生,研究生编写,在设计和实现高度优化的编译器以及确定优化的重要性和实现优化的最有效的方法等方面,为读者提供了非常有价值的指导。
作者简介
Steven S.Muchnick,曾是计算机科学教授,后作为惠普的PA-RISC和SUN的SPARC两种计算机体系结构的核心开发成员,将自己的知识和经验应用于编译器设计,并担任这些系统的高级编译器设计与实现小组的领导人。他在研究和开发方面的双重经验,对于指导读者作出编译器设计决策极具价值。
3.虎书(Tiger book)
书名是:Modern Compiler Implementation in C /Java /ML,Second Edition
作者是:Andrew W.Appel,with Jens Palsberg
内容简介
《现代编译原理——C语言描述(英文版)/图灵原版计算机科学系列》全面讲述了现代编译器的各个组成部分,包括:词法分析、语法分析、抽象语法、语义检查、中间代码表示、指令选择、数据流分析、寄存器分配以及运行时系统等。与大多数编译原理的教材不同,《现代编译原理——C语言描述(英文版)/图灵原版计算机科学系列》采用了函数语言和面向对象语言来描述代码生成和寄存器分配,对于编译器中各个模块之间的接口都给出了实际的 C 语言头文件。 全书分成两部分,第一部分是编译的基础知识,适用于第一门编译原理课程(一个学期);第二部分是高级主题,包括面向对象语言和函数语言、垃圾收集、循环优化、 SSA(静态单赋值)形式、循环调度、存储结构优化等。
本书是一本着名的编译原理课程的教材。国际上众多名校均采用本书作为编译原理课程的教材,包括美国麻省理工学院、加州大学伯克利分校、普林斯顿大学和英国剑桥大学等。本书在国外享有“虎书”的称号,与有“龙书”之称的《编译原理》(Alfred Aho 等编着)齐名。与编译原理方面的其他名着相比,本书出版时间晚,内容新。 书中专门为学生提供了一个用 C 语言编写的实习项目,包括前端和后端设计,学生可以在一学期内创建一个功能完整的编译器。
作者简介
Andrew W.Appel,美国普林斯顿大学计算机科学系教授,第26届ACM SIGPLAN-SIGACT程序设计原理年会大会执行主席,1998-1999年在贝尔实验室做研究工作。主要研究方向是计算机安全、编译器设计、程序设计语言等。
Ⅹ 熟悉【编译原理实验设计】的进来
这个一两句话也说不清楚的呀,建议还是找那本《编译原理与实践》来看看吧,也不用多看只要看看词法分析那章就行了。
