欢迎来到相识电子书!

标签:计算机科学

  • 计算机程序设计艺术卷1:基本算法(英文版.第3版)

    作者:Donald E.Knuth

    《计算机程序设计艺术》系列著作对计算机领域产生了深远的影响。这一系列堪称一项浩大的工程,自1962年开始编写,计划出版7卷,目前已经出版了4卷。《美国科学家》杂志曾将这套书与爱因斯坦的《相对论》等书并列称为20世纪最重要的12本物理学著作。目前Knuth正将毕生精力投入到这部史诗性著作的撰写中。想了解本书最新信息,请访http://www-cs-faculty.stanford.edu/~knuth/taocp.html。
  • 信息论基础

    作者:[美]ThomasM.Cove

    《信息论基础》(原书第2版)是信息论领域中一本简明易懂的教材。主要内容包括:熵、信源、信道容量、率失真、数据压缩与编码理论和复杂度理论等方面的介绍。《信息论基础》(原书第2版)还对网络信息论和假设检验等进行了介绍,并且以赛马模型为出发点,将对证券市场的研究纳入了信息论的框架,从新的视角给投资组合的研究带来了全新的投资理念和研究技巧。 《信息论基础》(原书第2版)第2版依然保持了第1版清晰。引人深思的写作风格。读者可以又一次获得数学,物理学。统计学以及信息论方面的综合知识。.. 关于信息论的主题包括熵、数据压缩。信道容量。率失真。网络信息论以及假设检验等领域的详细介绍,旨在为读者在理论研究和应用方面打下坚实的基础。在每章结束前提供了习题集和要点总结以及主要论点的历史回顾。 《信息论基础》(原书第2版)是电子工程。统计学以及电信方面的高年级本科生和研究生学习信息论基础课程的理想教材。
  • 现代操作系统(第3版)

    作者:Andrew S. Tanenbaum

    本书是操作系统领域的经典之作,与第2版相比,增加了关于Linux、Windows Vista和Symbian操作系统的详细介绍。书中集中讨论了操作系统的基本原理,包括进程、线程、存储管理、文件系统、输入/输出、死锁等,同时还包含了有关计算机安全、多媒体操作系统、掌上计算机操作系统、微内核、多核处理机上的虚拟机以及操作系统设计等方面的内容。此外,还在第2版的基础上对部分习题进行了增删,更有助于读者学习和对知识的理解及掌握。 本书适合作为高等院校计算机专业操作系统课程教材,也是设计、开发操作系统的重要参考书。 Tanenbaum教授作为三个操作系统的设计师或联合设计师,具有长期设计开发操作系统的经验,从而把其对理论的深入理解和具体实践融入书中,使本书成为操作系统领域的经典之作。 在本书第3版中,作者深入讨论了许多主题,包括:进程、线程、存储管理、文件系统、I/O、死锁、接口设计、多媒体、性能权衡,以及有关操作系统设计的最新趋势。书中不仅涵盖了现代操作系统的原理和实践,而且特别关注了Linux操作系统、Windows Vista操作系统、嵌入式操作系统、实时操作系统以及多媒体操作系统。 本书特色: ● 涉及Windows Vista以及最新的Linux/UNIX操作系统。 ● 用一整章(第12章)的篇幅对用于移动设备的Symbian操作系统进行分析。 ● 涵盖更多、更新的安全方面的内容。 ● 重新组织内容,尽早论述关键抽象概念。 ● 给出与未来操作系统发展有关的新研究成果。 ● 更新和增加了编程练习。 ● 在线操作系统练习(http://www.prenhall.com/tanenbaum/details.html)采用主流Windows操作系统以及开源工具。 ● 包括操作系统模拟练习。
  • Modern Operating Systems

    作者:Andrew S. Tanenbaum

    For software development professionals and computer science students, Modern Operating Systems gives a solid conceptual overview of operating system design, including detailed case studies of Unix/Linux and Windows 2000. What makes an operating system modern? According to author Andrew Tanenbaum, it is the awareness of high-demand computer applications--primarily in the areas of multimedia, parallel and distributed computing, and security. The development of faster and more advanced hardware has driven progress in software, including enhancements to the operating system. It is one thing to run an old operating system on current hardware, and another to effectively leverage current hardware to best serve modern software applications. If you don't believe it, install Windows 3.0 on a modern PC and try surfing the Internet or burning a CD. Readers familiar with Tanenbaum's previous text, Operating Systems, know the author is a great proponent of simple design and hands-on experimentation. His earlier book came bundled with the source code for an operating system called Minux, a simple variant of Unix and the platform used by Linus Torvalds to develop Linux. Although this book does not come with any source code, he illustrates many of his points with code fragments (C, usually with Unix system calls). The first half of Modern Operating Systems focuses on traditional operating systems concepts: processes, deadlocks, memory management, I/O, and file systems. There is nothing groundbreaking in these early chapters, but all topics are well covered, each including sections on current research and a set of student problems. It is enlightening to read Tanenbaum's explanations of the design decisions made by past operating systems gurus, including his view that additional research on the problem of deadlocks is impractical except for "keeping otherwise unemployed graph theorists off the streets." It is the second half of the book that differentiates itself from older operating systems texts. Here, each chapter describes an element of what constitutes a modern operating system--awareness of multimedia applications, multiple processors, computer networks, and a high level of security. The chapter on multimedia functionality focuses on such features as handling massive files and providing video-on-demand. Included in the discussion on multiprocessor platforms are clustered computers and distributed computing. Finally, the importance of security is discussed--a lively enumeration of the scores of ways operating systems can be vulnerable to attack, from password security to computer viruses and Internet worms. Included at the end of the book are case studies of two popular operating systems: Unix/Linux and Windows 2000. There is a bias toward the Unix/Linux approach, not surprising given the author's experience and academic bent, but this bias does not detract from Tanenbaum's analysis. Both operating systems are dissected, describing how each implements processes, file systems, memory management, and other operating system fundamentals. Tanenbaum's mantra is simple, accessible operating system design. Given that modern operating systems have extensive features, he is forced to reconcile physical size with simplicity. Toward this end, he makes frequent references to the Frederick Brooks classic The Mythical Man-Month for wisdom on managing large, complex software development projects. He finds both Windows 2000 and Unix/Linux guilty of being too complicated--with a particular skewering of Windows 2000 and its "mammoth Win32 API." A primary culprit is the attempt to make operating systems more "user-friendly," which Tanenbaum views as an excuse for bloated code. The solution is to have smart people, the smallest possible team, and well-defined interactions between various operating systems components. Future operating system design will benefit if the advice in this book is taken to heart. --Pete Ostenson --This text refers to the Hardcover edition. Product Description The widely anticipated revision of this worldwide best-seller incorporates the latest developments in operating systems technologies. The Third Edition includes up-to-date materials on relevant operating systems such as Linux, Windows, and embedded real-time and multimedia systems. Includes new and updated coverage of multimedia operating systems, multiprocessors, virtual machines, and antivirus software. Covers internal workings of Windows Vista (Ch. 11); unique even for current publications. Provides information on current research based Tanenbaum’s experiences as an operating systems researcher. A useful reference for programmers.
  • 算法概论

    作者:Sanjoy Dasgupta,Chri

    《国外经典教材·算法概论》涵盖了绝大多数算法设计中的常用技术。在表达每一种技术时,阐述它的应用背景,强调每个算法运转背后的简洁数学思想,注意运用与其他技术类比的方法来说明它的特征,并提供了大量相应实际问题的例子。《国外经典教材·算法概论》同时也注重了对每一种算法的复杂性分析。全书共10章,从基本的数字算法人手,先后介绍了分治、图的遍历、贪心算法、动态规划、线性规划等技术,对NP完全问题进行厂基本而清晰的阐述,对随机算法、近似算法和量子算法这些近年来发展迅猛的领域也花费了一定的笔墨。书中每章后面都附有大量的习题,有利于读者对书中内容的理解和应用。
  • 人工智能

    作者:S. Russell,P. Norvig

    本书被全世界89个国家的900多所大学用作教材。 本书以详尽和丰富的资料,从理性智能体的角度,全面阐述了人工智能领域的核心内容,并深入介绍了各个主要的研究方向。全书分为8大部分:第一部分“人工智能”,第二部分“问题求解”,第三部分“知识与推理”,第四部分“规划”,第五部分“不确定知识与推理”,第六部分“学习”,第七部分“通信、感知与行动”,第八部分“结论”。本书既详细介绍了人工智能的基本概念、思想和算法,还描述了其各个研究方向最前沿的进展,同时收集整理了详实的历史文献与事件。另外,本书的配套网址 本书适合于不同层次和领域的研究人员及学生,是高等院校本科生和研究生人工智能课的首选教材,也是相关领域的科研与工程技术人员的重要参考书。
  • 计算机程序设计艺术(第2卷)

    作者:Donald E. Knuth

    本书是国内外业界广泛关注的7卷本《计算机程序设计艺术》第2卷的最新版。本卷对半数值算法领域做了全面介绍,分“随机数”和“算术”两章。本卷总结了主要算法范例及这些算法的基本理论,广泛剖析了计算机程序设计与数值分析间的相互联系,其中特别值得注意的是作者对随机数生成程序的重新处理和对形式幂级数计算的讨论。 本书附有大量习题和答案,标明了难易程度及数学概念的使用。 本书内容精辟,语言流畅,引人入胜,可供从事计算机科学、计算数学、计算技术诸方面的工作人员参考、研究和借鉴,也是相关专业高等院校的理想教材和教学参考书。
  • UNIX操作系统设计

    作者:Maurice J.Bach

    本书内容包括 UNIX内核体系结构 磁盘高速缓冲机制 文件系统内部数据结构与算法 控制进程上下文的系统调用与进程调度 存储管理,包括对换和请求调页系统 通用驱动程序接口,包括磁盘驱动程序和终端驱动程序 进程间通信与网络,包括系统V消息、共享存储和信号量 紧密耦合的多处理机UNIX系统和松散耦合的分布式UNIX系统 本书可作为大学计算机科学系高年级学生和研究生的教材或参考书,也为从事UNIX系统研究与实用程序开发人员提供了一本极有价值的参考资料。
  • Computer Systems

    作者:Randal E. Bryant,Dav

    This book explains the important and enduring concepts underlying all computer systems, and shows the concrete ways that these ideas affect the correctness, performance, and utility of application programs. The book's concrete and hands-on approach will help readers understand what is going on “under the hood” of a computer system. This book focuses on the key concepts of basic network programming, program structure and execution, running programs on a system, and interaction and communication between programs. For anyone interested in computer organization and architecture as well as computer systems.
  • 计算机体系结构

    作者:斯坦福大学

    《计算机体系结构量化研究方法》(英文版·第4版)系统地介绍了计算机系统的设计基础、指令集系统结构、流水线和指令集并行技术、层次化存储系统与存储设备、互连网络以及多处理器系统等重要内容。在这个最新版中,作者更新了单核处理器到多核处理器的历史发展过程的相关内容,同时依然使用他们广受好评的“量化研究方法”进行计算设计,并展示了多种可以实现并行性的技术,而这些技术可以看成是展现多处理器体系结构威力的关键!在介绍多处理器时,作者不但讲解了处理器的性能,还介绍了有关的设计要素,包括能力、可靠性、可用性和可信性。
  • Hackers & Painters

    作者:Paul Graham

    "The computer world is like an intellectual Wild West, in which you can shoot anyone you wish with your ideas, if you're willing to risk the consequences. " --from Hackers & Painters: Big Ideas from the Computer Age , by Paul Graham We are living in the computer age, in a world increasingly designed and engineered by computer programmers and software designers, by people who call themselves hackers. Who are these people, what motivates them, and why should you care? Consider these facts: Everything around us is turning into computers. Your typewriter is gone, replaced by a computer. Your phone has turned into a computer. So has your camera. Soon your TV will. Your car was not only designed on computers, but has more processing power in it than a room-sized mainframe did in 1970. Letters, encyclopedias, newspapers, and even your local store are being replaced by the Internet. Hackers & Painters: Big Ideas from the Computer Age , by Paul Graham, explains this world and the motivations of the people who occupy it. In clear, thoughtful prose that draws on illuminating historical examples, Graham takes readers on an unflinching exploration into what he calls "an intellectual Wild West." The ideas discussed in this book will have a powerful and lasting impact on how we think, how we work, how we develop technology, and how we live. Topics include the importance of beauty in software design, how to make wealth, heresy and free speech, the programming language renaissance, the open-source movement, digital design, internet startups, and more.
  • 编程珠玑(续)

    作者:[美] Jon Bentley

    Jon Bentley编著的《编程珠玑(续)》是计算机科学方面的经典名著《编程珠玑》的姊妹篇,讲述了对于程序员有共性的知识。书中涵盖了程序员操纵程序的技术、程序员取舍的技巧、输入和输出设计以及算法示例,这些内容组成一个有机的整体,如一串串珠玑展示给程序员。《编程珠玑(续)》适合各级程序员阅读参考。
  • Structure and Interpretation of Computer Programs - 2nd Edition (MIT)

    作者:Harold Abelson,Geral

    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.
  • 编码

    作者:[美] Charles Petzold

    本书讲述的是计算机工作原理。作者用丰富的想象和清晰的笔墨将看似繁杂的理论阐述得通俗易懂,你丝毫不会感到枯燥和生硬。更重要的是,你会因此而获得对计算机工作原理较深刻的理解。这种理解不是抽象层面上的,而是具有一定深度的。
  • Concepts, Techniques, and Models of Computer Programming

    作者:Peter Van Roy,Seif H

    This innovative text presents computer programming as a unified discipline in a way that is both practical and scientifically sound. The book focuses on techniques of lasting value and explains them precisely in terms of a simple abstract machine. The book presents all major programming paradigms in a uniform framework that shows their deep relationships and how and where to use them together. After an introduction to programming concepts, the book presents both well-known and lesser-known computation models ("programming paradigms"). Each model has its own set of techniques and each is included on the basis of its usefulness in practice. The general models include declarative programming, declarative concurrency, message-passing concurrency, explicit state, object-oriented programming, shared-state concurrency, and relational programming. Specialized models include graphical user interface programming, distributed programming, and constraint programming. Each model is based on its kernel language--a simple core language that consists of a small number of programmer- significant elements. The kernel languages are introduced progressively, adding concepts one by one, thus showing the deep relationships between different models. The kernel languages are defined precisely in terms of a simple abstract machine. Because a wide variety of languages and programming paradigms can be modeled by a small set of closely related kernel languages, this approach allows programmer and student to grasp the underlying unity of programming. The book has many program fragments and exercises, all of which can be run on the Mozart Programming System, an Open Source software package that features an interactive incremental development environment.
  • 算法:C语言实现

    作者:塞奇威克

    《算法:C语言实现(第1-4部分)基础知识、数据结构、排序及搜索(原书第3版)》细腻讲解计算机算法的C语言实现。全书分为四部分,共16章。包括基本算法分析原理,基本数据结构、抽象数据结构、递归和树等数据结构知识,选择排序、插入排序、冒泡排序、希尔排序、快速排序方法、归并和归并排序方法、优先队列与堆排序方法、基数排序方法以及特殊用途的排序方法,并比较了各种排序方法的性能特征,在进一步讲解符号表、树等抽象数据类型的基础上,重点讨论散列方法、基数搜索以及外部搜索方法。书中提供了用C语言描述的完整算法源程序,并且配有丰富的插图和练习,还包含大量简洁的实现将理论和实践成功地相结合,这些实现均可用在真实应用上。 《算法:C语言实现(第1-4部分)基础知识、数据结构、排序及搜索(原书第3版)》内容丰富,具有很强的实用价值,适合作为高等院校计算机及相关专业本科生算法课程的教材,也是广大研究人员的极佳参考读物。
  • The Practice of Programming

    作者:Brian W. Kernighan,R

    With the same insight and authority that made their book The Unix Programming Environment a classic, Brian Kernighan and Rob Pike have written The Practice of Programming to help make individual programmers more effective and productive. This book is full of practical advice and real-world examples in C, C++, Java, and a variety of special-purpose languages. Kernighan and Pike have distilled years of experience writing programs, teaching, and working with other programmers to create this book. Anyone who writes software will profit from its principles and guidance.
  • Introduction to Algorithms, 3rd Edition

    作者:Thomas H. Cormen,Cha

    Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. Introduction to Algorithms uniquely combines rigor and comprehensiveness. The book covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers. Each chapter is relatively self-contained and can be used as a unit of study. The algorithms are described in English and in a pseudocode designed to be readable by anyone who has done a little programming. The explanations have been kept elementary without sacrificing depth of coverage or mathematical rigor. The first edition became a widely used text in universities worldwide as well as the standard reference for professionals. The second edition featured new chapters on the role of algorithms, probabilistic analysis and randomized algorithms, and linear programming. The third edition has been revised and updated throughout. It includes two completely new chapters, on van Emde Boas trees and multithreaded algorithms, and substantial additions to the chapter on recurrences (now called "Divide-and-Conquer"). It features improved treatment of dynamic programming and greedy algorithms and a new notion of edge-based flow in the material on flow networks. Many new exercises and problems have been added for this edition. As of the third edition, this textbook is published exclusively by the MIT Press.
  • 计算机组成与设计硬件/软件接口

    作者:[美] David A.Patterso

    《计算机组成与设计硬件:软件接口》(原书第3版)是计算机组成的经典教材。全书着眼于当前计算机设计中最基本的概念,展示了软硬件间的关系,并全面介绍当代计算机系统发展的主流技术和最新成就。同以往版本一样,《计算机组成与设计硬件:软件接口》(原书第3版)采用MIPS处理器作为展示计算机硬件技术基本功能的核心。书中逐条指令地列举了完整的MIPS指令集,并介绍了网络和多处理器结构的基本内容。将CPU性能和程序性能紧密地联系起来是本版的一个新增内容。另外,本版对软硬件的讨论更加深入,作者展示了软硬件部件如何影响程序的性能,并在光盘中为侧重硬件和侧重软件的读者分别提供了相关资料。随书光盘内容非常丰富,不仅包括各种配套教学资源,还提供了HDL模拟器、MIPS模拟器以及FPGA设计工具等软件。
  • 大教堂与集市

    作者:[美] Eric S. Raymond

    当代软件技术领域最重要的著作,中文版首次出版! 《大教堂与集市》是开源运动的《圣经》,颠覆了传统的软件开发思路,影响了整个软件开发领域。作者Eric S. Raymond是开源运动的旗手、黑客文化第一理论家,他讲述了开源运动中惊心动魄的故事,提出了大量充满智慧的观念和经过检验的知识,给所有软件开发人员带来启迪。本书囊括了作者最著名的“五部曲”,并经过作者的全面更新,增加了大量注释,提高了可读性,是经典收藏。 开源运动对软件业和互联网带来了巨大影响,本书作为开源运动的独立宣言,其影响力远远超出编程领域,如果想在互联网时代做生意,这本书是必读经典。 详细内容: 本书是开源运动的独立宣言,它清晰、透彻和准确地描述了开源运动的理论与实际应用,对开源软件运动的成功和Linux操作系统的广泛采用,都起到了至关重要的作用。 作者Eric S. Raymond是开源运动和黑客文化的元老级人物,他是INTERCAL编程语言的主要创作者之一,是Fetchmail程序的作者,并为EMACS编辑器作出过贡献。1997年以后,他成为开放源代码运动的主要理论家,以及开放源代码促进会的主要创办人之一。 作者观察到,在互联网世界里,有一种与传统软件开发模式(大教堂模式)截然不同的全新的模式:集市模式。大教堂模式是封闭的、垂直的、集中式的开发模式,反映一种由权利关系所预先控制的层级制度;而集市模式则是并行的、点对点的、动态的多人协同开发模式,开发者之间通常仅仅靠互联网联系,在这种貌似混乱而无序的开发环境中,居然产生了质量极高和极具效率与生命力的软件,产生了诸如Linux这种世界级的操作系统,这是怎么做到的呢? 作者通过亲自实践,研究了这种模式的成功原因和主要特点,给出了19条软件开发的真知灼见,解释了黑客愿意无偿贡献自己代码的动机,研究了开源软件的经济动力和盈利机制,并预测了软件业将必然面临的根本性变革。 作者在书中对“黑客”(hacker)这一通常被误用的称呼做了正名,指出黑客并不是计算机犯罪分子,而是醉心于软件和网络的编程高手,是乐于分享和喜欢突破极限的问题解决专家、天才发明家和艺术家。对于想要成为一名黑客的读者,作者指出了黑客应具备的基本态度、黑客和骇客的本质区别、黑客应有的格调和如何掌握黑客的基本技能,作者指出:黑客文化靠声誉运转,只有当其他黑客一致称你为黑客时,你才是黑客。 本书囊括了作者被业界称为“五部曲”的核心著作:“黑客圈简史”(A Brief History of Hackerdom)、“大教堂和大集市”(The Cathedral and the Bazaar)、“如何成为一名黑客”(How To Become A Hacker)、“开拓心智层”(Homesteading the Noosphere)和“魔法锅”(The Magic Cauldron)。其中最著名的当属“大教堂和大集市”。本书在开源运动中的地位相当于基督教的《圣经》,用黑客们的话说,这是“黑客藏经阁”的第一收藏。 本书并不只是在讲开源和黑客,所有关心软件开发和IT发展的人,都应该花些时间通读全书,书中给出了大量充满智慧的观念和有趣的知识,如命令体系、礼物文化、以少成多、内部市场、竞次、反公地模型、委员会设计、同侪声誉、模因工程、SNAFU现象、进化不利条件、软件业是服务行业、组织结构决定产品结构、准入门槛越低稳定性越高、程序员是资产而非成本等,这些内容一定会给你带来新的启示和思考。