计算机科学
Python程序设计基础及实践(慕课版)
Douban
郭炜 2021 - 9
本书是一部零基础、高标准,大广度、重实践的Python编程从入门到熟练的教材。本书覆盖面非常广,包括计算机基础常识、Python语言的基本要素、基本运算和条件分支语句、循环语句、函数、递归、复杂数据类型、计算思维、文件读写、正则表达式、玩转Python生态、数据分析和可视化、网络爬虫、面向对象程序设计入门、tkinter图形界面程序设计等内容。正则表达式、网络爬虫、图形界面等都是其他大多数Python基础教材不涉及的内容。对Python第三方库的使用,讲述尤其全面,涵盖数据分析库NumPy和pandas、数据库编程库SQLite3、图像处理库Pillow、Excel文档处理库OpenPyXL、统计绘图库Matplotlib、分词库Jieba等。还专门用一章的篇幅讲述计算思维,让读者了解计算的本质、时间复杂度、数据结构等概念。这些内容,都不是蜻蜓点水,而是深入浅出。 本书适合高等院校各专业学习Python使用。文、理、艺术等各类专业的零基础学生可以掌握并用到本书80%的内容;对编程有较高需求的理科生,可以进一步再多学15%;余下5%则基本是计算机专业学生才需要了解的。但即便是计算机专业的学生,也非常适合使用本书来快速掌握Python语法及各种库的使用。 本书配套电子资料十分齐全,包括程序源代码、重点难点讲解视频、课程讲义等,此外,作者在中国大学慕课开设的“实用Python程序设计”课程,提供了覆盖全书90%内容的视频讲解。
Read
June 25, 2022
郭神在教学上确实下了功夫,很适合推荐给非专业读者。
计算机科学 Python
Structure and Interpretation of Computer Programs - 2nd Edition (MIT)
Douban Goodreads
★ 9.6 21 ratings
Harold Abelson / Gerald Jay Sussman publishing house: The MIT Press 1996 - 7
Structure and Interpretation of Computer Programs has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text. There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published. A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in computational models: objects with state, concurrent programming, functional programming and lazy evaluation, and nondeterministic programming. There are new example sections on higher-order procedures in graphics and on applications of stream processing in numerical programming, and many new exercises. In addition, all the programs have been reworked to run in any Scheme implementation that adheres to the IEEE standard.
Basic Category Theory for Computer Scientists
Douban
Benjamin C. Pierce publishing house: The MIT Press 1991 - 8
Category theory is a branch of pure mathematics that is becoming an increasingly important tool in theoretical computer science, especially in programming language semantics, domain theory, and concurrency, where it is already a standard language of discourse. Assuming a minimum of mathematical preparation, Basic Category Theory for Computer Scientists provides a straightforward presentation of the basic constructions and terminology of category theory, including limits, functors, natural transformations, adjoints, and cartesian closed categories. Four case studies illustrate applications of category theory to programming language design, semantics, and the solution of recursive domain equations. A brief literature survey offers suggestions for further study in more advanced texts. Benjamin C. Pierce received his doctoral degree from Carnegie Mellon University.Contents : Tutorial. Applications. Further Reading.
Modal Logic
Google Books Douban
Patrick Blackburn / Maarten de Rijke … publishing house: 劍橋大學出版社 2002 - 8
"This is an advanced 2001 textbook on modal logic, a field which caught the attention of computer scientists in the late 1970s. Researchers in areas ranging from economics to computational linguistics have since realised its worth. The book is for novices and for more experienced readers, with two distinct tracks clearly signposted at the start of each chapter. The development is mathematical; prior acquaintance with first-order logic and its semantics is assumed, and familiarity with the basic mathematical notions of set theory is required. The authors focus on the use of modal languages as tools to analyze the properties of relational structures, including their algorithmic and algebraic aspects, and applications to issues in logic and computer science such as completeness, computability and complexity are considered. Three appendices supply basic background information and numerous exercises are provided. Ideal for anyone wanting to learn modern modal logic."--Publisher's website.
Understanding Petri Nets
Douban
Reisig, Wolfgang 2013 - 7
With their intuitive graphical approach and expressive analysis techniques, Petri nets are suitable for a wide range of applications and teaching scenarios, and they have gained wide acceptance as a modeling technique for computer science-based systems. This book is a clear, thorough introduction to Petri nets. The explanations are supported throughout with fully integrated graphical illustrations, with only the analysis and verification presented in a formal manner. The author clearly explains the core of each related topic, leaving the reader to explore other sources for further details. The book will be suitable for students of computer science and related subjects. The book includes exercises and the solutions are available online.
类型和程序设计语言
Types and Programming Languages Douban
皮尔斯 publishing house: 电子工业出版社 2005 - 5
类型理论在程序设计语言的发展中起着举足轻重的作用,成熟的类型系统可以帮助完善程序设计本身,帮助运行系统检查程序中的语义错误。 要理解类型系统在程序设计语言中发挥的作用,本书将是首选读物。本书内容覆盖基本操作语义及其相关证明技巧、无类型lambda演算、简单类型系统、全称多态和存在多态、类型重构、子类型化、囿界量词、递归类型、类型算子等内容。本书既注重内容的广度,也注重内容的深度,实用性强。在引入语言的语法对象时先举例,然后给出形式定义及基本证明,在对理论的进一步研究后给出了类型检查算法,并对每种算法都给出了OCaml程序的具体实现。本书对类型理论中的概念都有详细的阐述,为读者提供了一个进一步理论学习的基础。本书内容广泛,读者可以根据自己的需要有选择地深入阅读。 本书适合从事程序设计的研究人员和开发人员,以及程序设计语言和类型理论的研究人员阅读。可作为计算机专业高年级学生、研究生的学习教材。
鸟哥的Linux私房菜
Douban
★ 8.6 32 ratings
鸟哥 publishing house: 人民邮电出版社 2010 - 6
本书是最具知名度的Linux入门书《鸟哥的Linux私房菜基础学习篇》的最新版,全面而详细地介绍了Linux操作系统。全书分为5个部分:第一部分着重说明Linux的起源及功能,如何规划和安装Linux主机;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口 shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全非常重要的Linux账号的管理,以及主机系统与程序的管理,如查看进程、任务分配和作业管理;第五部分介绍了系统管理员(root)的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。 本书内容丰富全面,基本概念的讲解非常细致,深入浅出。各种功能和命令的介绍,都配以大量的实例操作和详尽的解析。本书是初学者学习Linux不可多得的一本入门好书。
计算机体系结构
Computer Architecture:A Quantitative Approach,Fifth Edition Douban
[美] John L. Hennessy / [美] David A. Patterson translator: 贾洪峰 publishing house: 人民邮电出版社 2012
本书是最权威的计算机体系结构著作,是久负盛名的经典作品。书中系统地介绍了计算机系统的设计基础、指令集系统结构、流水线和指令集并行技术、层次化存储系统与存储设备、互连网络以及多处理器系统等重要内容。在这个最新版中,作者增加了当前炙手可热的云计算和手机客户端技术等相关内容,探讨了在手机、平板电脑、笔记本电脑和其他移动计算设备上云计算的软硬件实现方式。
手把手教你设计CPU:RISC-V处理器
Douban
胡振波 publishing house: 人民邮电出版社 2018 - 5
本书是一本介绍通用CPU设计的入门书,以通俗的语言系统介绍了CPU和RISC-V架构,力求为读者揭开CPU设计的神秘面纱,打开计算机体系结构的大门。 本书共分为四部分。第一部分是CPU与RISC-V的综述,帮助初学者对CPU和RISC-V快速地建立起认识。第二部分讲解如何使用Verilog设计CPU,使读者掌握处理器核的设计精髓。第三部分主要介绍蜂鸟E203配套的SoC和软件平台,使读者实现蜂鸟E203 RISC-V处理器在FPGA原型平台上的运行。第四部分是附录,介绍了RISC-V指令集架构,辅以作者加入的背景知识解读和注解,以便于读者理解。 本书不仅适合CPU或芯片设计相关从业者阅读使用,也适合作为大中专院校相关师生学习RISC-V处理器设计(使用Verilog语言)和CPU设计的指导用书。
Xilinx FPGA权威设计指南
Douban
何宾 publishing house: 电子工业出版社 2015 - 2
本书全面系统地介绍了Xilinx新一代集成开发环境Vivado 2014.3的设计方法、设计流程和具体实现。全书共分11章,内容包括:Xilinx UltraScale结构、Vivado集成设计环境导论、Vivado工程模式基本设计实现、Vivado非工程模式基本设计实现、创建和封装用户IP核流程、Vivado高级约束原理及实现、Vivado调试工具原理及实现、Vivado嵌入式系统设计实现、Vivado模型设计原理及实现、Vivado HLS原理及实现、Vivado部分可重配置原理及实现。本书参考了Xilinx提供的大量Vivado最新设计资料,理论与应用并重,将Xilinx最新的设计理论贯穿在具体的设计实现中。
垃圾回收算法手册:自动内存管理的艺术
The Garbage Collection Handbook: the Art of Automatic Memory Management Douban
Richard Jones / Eliot Moss … translator: 王雅光 / 薛迪 publishing house: 机械工业出版社 2016 - 3
在自动内存管理领域,Richard Jones于1996年出版的《Garbage Collection:Algorithms for Automatic Dynamic Memory Management》可谓是一部里程碑式的作品。接近20年过去了,垃圾回收技术得到了非常大的发展,因此有必要将该领域当前最先进的技术呈现给读者。本书汇集了自动内存管理研究者和开发者们在过去50年间的丰富经验,在本书中,作者在一个统一的易于接受的框架内比较了当下最重要的回收策略以及最先进的回收技术。 本书从近年来硬件与软件的发展给垃圾回收所带来的新挑战出发,探讨了这些挑战给高性能垃圾回收器的设计者与实现者所带来的影响。在简单的传统回收算法之外,本书还涵盖了并行垃圾回收、增量式垃圾回收、并发垃圾回收以及实时垃圾回收。书中配备了丰富的伪代码与插图,以描述各种算法与概念。 本书特色 为1996年《Garbage Collection:Algorithms for Automatic Dynamic Memory Management》一书提供了完整的、最新的、权威的续作。 全面讲解并行垃圾回收算法、并发垃圾回收算法以及实时垃圾回收算法。 深入剖析某些垃圾回收领域的棘手问题,包括与运行时系统的接口。 提供在线数据库支持,包含超过2500条垃圾回收相关文献。
Compilers
Douban Goodreads
★ 8.4 5 ratings
Alfred V. Aho / Monica S. Lam … publishing house: Addison Wesley 2006 - 9
This book provides the foundation for understanding the theory and pracitce of compilers. Revised and updated, it reflects the current state of compilation. Every chapter has been completely revised to reflect developments in software engineering, programming languages, and computer architecture that have occurred since 1986, when the last edition published. The authors, recognizing that few readers will ever go on to construct a compiler, retain their focus on the broader set of problems faced in software design and software development. Computer scientists, developers, and aspiring students that want to learn how to build, maintain, and execute a compiler for a major programming language.
Read
Dec. 27, 2020
学习了前9章的核心内容,最初被语言分析技术所吸引,后来才明白编译的精髓还是在后端。以及只有我一个人是Parser理论学得很开心,真动手实现起编译器直挠头吗?
编译原理 计算机科学 语法分析 形式语义学
编译原理
Douban Goodreads
★ 9.1 7 ratings
Alfred V. Aho / Monica S.Lam … translator: 赵建华 / 郑滔 … publishing house: 机械工业出版社 2008
本书全面、深入地探讨了编译器设计方面的重要主题,包括词法分析、语法分析、语法制导定义和语法制导翻译、运行时刻环境、目标代码生成、代码优化技术、并行性检测以及过程间分析技术,并在相关章节中给出大量的实例。与上一版相比,本书进行了全面的修订,涵盖了编译器开发方面的最新进展。每章中都提供了大量的系统及参考文献。 本书是编译原理课程方面的经典教材,内容丰富,适合作为高等院校计算机及相关专业本科生及研究生的编译原理课程的教材,也是广大技术人员的极佳参考读物。
Read
Dec. 27, 2020
部分名词的译法增加了阅读难度,比如“到达定值”(Reaching Definition),但整体上翻译质量还不错。第358页关于寄存器冲突图的例子死活读不懂,一查英文版果然是字母编号出现了低级错误。
编译原理 计算机科学 语法分析 形式语义学
计算理论导引(原书第3版)
Introduction to the Theory of Computation Douban
[美] Michael Sipser translator: 段磊 / 唐常杰 … publishing house: 机械工业出版社 2015 - 8
《计算理论导引(原书第3版)》由计算理论领域的知名权威 Michael Sipser 所撰写。他以独特的视角,系统地介绍了计算理论的三个主要内容:自动机与语言、可计算性理论和计算复杂性理论。作者以清新的笔触、生动的语言给出了宽泛的数学原理,而没有拘泥于某些低层次的细节。在证明之前,均有“证明思路”,帮助读者理解数学形式下蕴涵的概念。本书可作为计算机专业高年级本科生和研究生的教材,也可作为教师和研究人员的参考书。
Read
Dec. 16, 2020
一些重要细节翻译有误,造成理解上的困难甚至根本就是错误的,比如Myhill–Nerode定理的证明以及空间可构造性、时间可构造性的定义。
递归论 TCS 计算理论 计算机科学 逻辑学
Introduction to the Theory of Computation
Douban
★ 9.7 6 ratings
Michael Sipser publishing house: Cengage Learning 2012 - 6
Gain a clear understanding of even the most complex, highly theoretical computational theory topics in the approachable presentation found only in the market-leading INTRODUCTION TO THE THEORY OF COMPUTATION, 3E. The number one choice for today's computational theory course, this revision continues the book's well-know, approachable style with timely revisions, additional practice, and more memorable examples in key areas. A new first-of-its-kind theoretical treatment of deterministic context-free languages is ideal for a better understanding of parsing and LR(k) grammars. You gain a solid understanding of the fundamental mathematical properties of computer hardware, software, and applications with a blend of practical and philosophical coverage and mathematical treatments, including advanced theorems and proofs. INTRODUCTION TO THE THEORY OF COMPUTATION, 3E's comprehensive coverage makes this a valuable reference for your continued studies in theoretical computing.
Read
Dec. 16, 2020
或许是最好的计算理论教材,从最基础的有穷自动机讲起,直至将Kolmogorov complexity和交互式证明系统这样的概念以自然的方式呈现在读者眼前。Sipser属于那种教学经验丰富、深谙把复杂证明讲得深入浅出之道的作者。这一版还增加了对确定型下推自动机以及LR(k)文法的讨论,对于关心自动机应用的读者来说,几乎可以和编译龙书无缝衔接。
递归论 TCS 计算理论 计算机科学 逻辑学
Computer Organization and Design RISC-V Edition
Douban
David A. Patterson / John L. Hennessy publishing house: Morgan Kaufmann 2017 - 5
The new RISC-V Edition of Computer Organization and Design features the RISC-V open source instruction set architecture, the first open source architecture designed to be used in modern computing environments such as cloud computing, mobile devices, and other embedded systems. With the post-PC era now upon us, Computer Organization and Design moves forward to explore this generational change with examples, exercises, and material highlighting the emergence of mobile computing and the Cloud. Updated content featuring tablet computers, Cloud infrastructure, and the x86 (cloud computing) and ARM (mobile computing devices) architectures is included. An online companion Web site provides advanced content for further study, appendices, glossary, references, and recommended reading. Features RISC-V, the first such architecture designed to be used in modern computing environments, such as cloud computing, mobile devices, and other embedded systems Includes relevant examples, exercises, and material highlighting the emergence of mobile computing and the cloud
计算机组成与设计(原书第5版)
Computer Organization and Design: The Hardware/Software Interface (5/e) Douban
戴维 A.帕特森 (David A.Patterson) / 约翰 L.亨尼斯 (John L.Hennessy) translator: 王党辉 / 康继昌 … publishing house: 机械工业出版社 2015 - 7
《计算机组成与设计:硬件/软件接口》是计算机组成与设计的经典畅销教材,第5版经过全面更新,关注后PC时代发生在计算机体系结构领域的革命性变革——从单核处理器到多核微处理器,从串行到并行。本书特别关注移动计算和云计算,通过平板电脑、云体系结构以及ARM(移动计算设备)和x86(云计算)体系结构来探索和揭示这场技术变革。 与前几版一样,本书采用MIPS处理器讲解计算机硬件技术、汇编语言、计算机算术、流水线、存储器层次结构以及I/O等基本功能。
计算机系统
Computer Systems:An Integrated Approach to Architecture and Operating Systems Douban
[美] Umakishore Ramachandran / [美] William Leahy Jr. translator: 陈文允 publishing house: 机械工业出版社 2015 - 7
本书采用集成方法,系统地讲解了计算机系统的软件和硬件知识。全书分为5个模块:处理器、内存系统、存储系统、并行系统和网络,分别介绍并讨论了处理器及其相关的软件问题、内存系统和内存分级体系、I/O和文件系统、操作系统问题及支持并行编程的多处理器中相应体系结构特点、网络硬件的发展和处理各种网络行为的网络协议堆的特点等。
数据结构与算法
Douban
张铭 / 王腾蛟 … publishing house: 高等教育出版社 2008 - 6
《数据结构与算法》是普通高等教育“十一五”国家级规划教材,也是北京市精品课程主讲教材。《数据结构与算法》按照IEEE/ACM CC20025和教育部教指委关于“计算机科学与技术专业规范”(CCC2005)的要求编写,力求使学生较全面地理解数据结构的概念、掌握各种数据结构与算法的实现方式,同时比较不同数据结构和算法的特点,重点强调实践教学和学生动手能力的培养。 《数据结构与算法》的内容涉及基本数据结构、排序、索引、检索、高级数据结构等内容,借助抽象数据类型,从逻辑结构的角度系统介绍线性表、字符串、二叉树、树和图等各种基本数据结构;从算法的角度系统地介绍各类排序、检索和索引算法;从应用的角度介绍一些更复杂的数据结构与算法分析技术。《数据结构与算法》采用能够更自然体现抽象数据类型概念的C++语言作为算法描述语言,注意对每一种数据结构的不同存储方法及相关算法进行比较分析。很多算法使用了参数化的模板,从而提高了算法中数据类型的通用性,支持高效的代码重用。 《数据结构与算法》概念清楚,逻辑性强,内容新颖,可作为普通高校计算机科学与技术专业学生的教材和参考书,也可作为参加计算机科学与技术学科硕士/ 博士生、软件工程硕士生入学考试的考试参考书,还可供计算机应用技术和电子学等理科专业的学生参考。