欢迎来到相识电子书!

标签:计算机科学

  • Modern Compiler Implementation in C

    作者:Andrew W. Appel

    This new, expanded textbook describes all phases of a modern compiler: lexical analysis, parsing, abstract syntax, semantic actions, intermediate representations, instruction selection via tree matching, dataflow analysis, graph-coloring register allocation, and runtime systems. It includes good coverage of current techniques in code generation and register allocation, as well as functional and object-oriented languages, that are missing from most books. In addition, more advanced chapters are now included so that it can be used as the basis for a two-semester or graduate course. The most accepted and successful techniques are described in a concise way, rather than as an exhaustive catalog of every possible variant. Detailed descriptions of the interfaces between modules of a compiler are illustrated with actual C header files. The first part of the book, Fundamentals of Compilation, is suitable for a one-semester first course in compiler design. The second part, Advanced Topics, which includes the advanced chapters, covers the compilation of object-oriented and functional languages, garbage collection, loop optimizations, SSA form, loop scheduling, and optimization for cache-memory hierarchies.
  • 操作系统:设计与实现(第二版)

    作者:Albert S.Woodhull,An

    本书共6章,涵盖了操作系统课程的所有内容,即传统上的进程管理、存储器管理、文件管理和设备管理, 同时又包含线程、基于消息传递系统的构造模型、日志结构文件系统、安全保护机制、RAM及CD—ROM盘等,且以Pentium CPU作为实例。这样,既能学习操作系统的经典内容,又能了解当前最新技术。 本书为第二版,其第一版于1987年出版时,曾引发了操作系统课程教学的一场小变革。因为,在那以前多数教材只讲理论,而本教材却是基于理论与具体实例(MINIX)的结合。这对于掌握操作系统的设计与实现是大有稗益的。 本书分为上、下两册。上册为正文部分,下册为三个附录及随书光盘.
  • 系统设计的一般原理

    作者:杰拉尔德・温伯格,丹妮拉・温伯格

    本书是一位计算机专家与一位人类学家思想碰撞的结晶,针对那些无法通过传统方法解决的系统问题,为我们介绍了分析与理解这类问题的新观点和新方法。 这是一本有关一般系统的思想与如何有效思考的著作,对各个学科领域,都有广泛的适用性,不仅仅是关于计算机的系统,还包括各种系统--人类、自然、科技。它提供了许多关于设计信息管理系统、培训程序、商业组织或都市人日常工作的应用实例。行文旁征博引,例子丰富,语言幽默风趣,涵盖了各类型系统(人类、自然以及技术系统)的设计问题。 本书曾以"关于稳定系统的设计"为题首次出版,历经数年后再次修订出版。作者利用他们在技术和社会科学上的优势,给出许多非常有启发性的见解,并把这些见解用任何人都能理解的语言表述出来。无论专业人员、普通人还是学生,都可以从本书中获得求解问题的实用方法,因此是一本可读性极强的佳作。也可以作为人文、社会、自然和工程科学等专业本科生的教材。
  • 计算机科学导论

    作者:布鲁克希尔

    本书对计算机科学这一学科进行了全面的介绍,内容包含广泛,并具有清晰的解释、是“计算机科学导论”课的首选教材。本书的特点之处在于,它对每个主题的讨论都不只是针对具体的编程语言。而且,通过对计算机科学过去的发展、现状以及研究方向的讨论,来展示计算机科学的各种知识。本书还给出了有关编程语言、操作系统、算法、软件工程、网络互连、数据库设计、人工智能以及计算机体系结构的大量真实图片。
  • Linkers and Loaders

    作者:John R. Levine

    Whatever your programming language, whatever your platform, you probably tap into linker and loader functions all the time. But do you know how to use them to their greatest possible advantage? Only now, with the publication of Linkers & Loaders, is there an authoritative book devoted entirely to these deep-seated compile-time and run-time processes. The book begins with a detailed and comparative account of linking and loading that illustrates the differences among various compilers and operating systems. On top of this foundation, the author presents clear practical advice to help you create faster, cleaner code. You'll learn to avoid the pitfalls associated with Windows DLLs, take advantage of the space-saving, performance-improving techniques supported by many modern linkers, make the best use of the UNIX ELF library scheme, and much more. If you're serious about programming, you'll devour this unique guide to one of the field's least understood topics. Linkers & Loaders is also an ideal supplementary text for compiler and operating systems courses. *Includes a linker construction project written in Perl, with project files available for download. *Covers dynamic linking in Windows, UNIX, Linux, BeOS, and other operating systems. *Explains the Java linking model and how it figures in network applets and extensible Java code. *Helps you write more elegant and effective code, and build applications that compile, load, and run more efficiently.
  • 现代操作系统

    作者:(荷)Andrew S. Tanenba

    本书是操作系统领域的经典之作,与第1版相比有较大的变化。书中集中讨论了操作系统的基本原理,除了重点放在单处理机操作系统之处,还包含了有关计算机安全、多媒体操作系统、UNIX、Window2000以及操作系统设计等方面的内容。书中涉及的主题包括图形用户界面、多处理机操作系统、笔记本电脑电源管理、可信系统、病毒、网络终端、CD-ROM文件系统、互斥信号量、RAID、软定时器、稳定存储器以及新的页面置换算法等。此外,书中还增加了大量习题,方便教学。 本书适合作为高等院校计算机科学与技术专业操作系统课程教材,也是设计、开发操作系统的重要参考书。
  • UNIX程序设计艺术

    作者:雷蒙德

    编写更好的软件:30年UNIX开发经验的结晶! 本书是作者封笔30年后历时5年创作而成,是一部难得的软件工程方面的佳作。作者首次将哲学、设计模式、工具、文化和传统结合在一起,使得UNIX成为世界上最好且最创新意义的软件,并展示了如何将其拓展到Linux和当今的开源(open-source)运动中。通过取自最主要的开源项目中的示例,作者向UNIX和Linux编程人员展示了如何更巧妙地创建软件,使其更雅致、更灵巧、更具可重用性且具有更长的生命期。 Raymond借鉴了以下13位UNIX先锋人物的观点: Ken Thompson,UNIX的发明者 Ken Arnold,4BSD UNIX的创建者之一,也是《The Java Programming Language》的作者之一。 Steven M.Bellovin,Usenet的创始人之一,也是《Firewalls and Internel Security》的作者之一。 Stuart Feldman,贝尔实验室UNIX开发组成员,也是《make》和《f77》的作者。 Jim gettys和Keith Packard,X视窗系统的主创人员。 Steve Johnson,《yacc》和《Portable C Compiler》两书的作者。 Brian Kernighan《The C Programming Language》、《The UNIX Programming Environment》及《The Practice of Programming》等几本书的作者之一,也是awk编程语言的作者之一。 David Korn,korn shell的创始人,也是《The New Korn Shell Command and Programming Language》的作者。 Mike Lesk,贝尔实验室开发组成员,ms宏包、tbl和refer工具以及lex与UUCP的作者 Doug Mcllroy,贝尔实验室研究组主任,UNIX即诞生于此;同时他还是UNIX管道的发明者。 Marshall Kirk McKusick,4.2BSD快速文件系统的开发者,4.3BSD和4.4BSD开发组的领导。 Henry Spencer,早期UNIX开发者中的佼佼者,他创建了getopt、第一个开源字符串库以及用于4.4BSD的正则表达式引擎。 “Reading this book has filled a gap in my education. I feel a sense of completion, understand that UNIX is really a style of community. Now I get it, at least I get it one level deeper than I ever did before. This book came at a perfect moment for me, a moment when I shifted from visualizing programs as things to programs as the shadows cast by communities. From this perspective, Eric makes UNIX make perfect sense。” 作者简介: Eric S.Raymond多年前即从事NUIX开发。他以开源社区巡回大使的身份而著称。他在著名的《The Cathedral and the Bazaar》、《大教堂和市集》中发表了开源运动的宣言,并且还编著了《The New Hacker's Dictionary》一书。
  • FreeBSD操作系统设计与实现

    作者:(美)麦库西克

    FreeBSD操作系统设计与实现,ISBN:9787115136855,作者:(美)(Marshall, K.M.)著
  • 计算机图形学

    作者:(美)赫恩(Donald Hearn),

    本书是一本内容丰富、取材新颖的计算机图形学著作,并在其前一版的基础上进行了全面扩充,增加了许多新的内容,覆盖了近年来计算机图形学的最新发展与成就。全书层次分明、重点突出,并附有使用OpenGL编写的大量程序以及各种效果图,是一本难得的优秀教材。 本书共分为15章,全面系统地讲解了计算机图形学的基本概念和相关技术。作者首先对计算机图形学进行综述;然后讲解二维图形的对象表示、算法和应用,以及三维图形的相关技术、建模和变换;接着介绍光照模型、颜色模型和动画技术。本书还新增了有关层次建模和图形文件格式的介绍,最后的附录给出了计算机图形学中用到的基本数学概念。 本书可作为信息技术等相关专业本科生和研究生和研究生的教材的教材或参考书,也可以作为计算机图形学工作者的参考书。
  • A Discipline of Programming

    作者:Edsger W. Dijkstra

  • The Art of Computer Programming, Volume 1, Fascicle 1

    作者:Donald E. Knuth

    From the Back Cover This multivolume work on the analysis of algorithms has long been recognized as the definitive description of classical computer science. The three complete volumes published to date already comprise a unique and invaluable resource in programming theory and practice. Countless readers have spoken about the profound personal influence of Knuth's writings. Scientists have marveled at the beauty and elegance of his analysis, while practicing programmers have successfully applied his "cookbook" solutions to their day-to-day problems. All have admired Knuth for the breadth, clarity, accuracy, and good humor found in his books. To begin the fourth and later volumes of the set, and to update parts of the existing three, Knuth has created a series of small books called fascicles, which will be published t regular intervals. Each fascicle will encompass a section or more of wholly new or evised material. Ultimately, the content of these fascicles will be rolled up into the comprehensive, final versions of each volume, and the enormous undertaking that began in 1962 will be complete. Volume 1, Fascicle 1 This first fascicle updates The Art of Computer Programming, Volume 1, Third Edition: Fundamental Algorithms, and ultimately will become part of the fourth edition of that book. Specifically, it provides a programmer's introduction to the long-awaited MMIX, a RISC-based computer that replaces the original MIX, and describes the MMIX assembly language. The fascicle also presents new material on subroutines, coroutines, and interpretive routines.
  • The Algorithm Design Manual

    作者:Steven S. Skiena

    ....The most comprehensive guide to designing practical and efficient algorithms.... Written by a well-known algorithms researcher who received the IEEE Computer Science and Engineering Teaching Award, this new edition of The Algorithm Design Manual is an essential learning tool for students needing a solid grounding in algorithms, as well as a special text/reference for professionals who need an authoritative and insightful guide. Professor Skiena is also author of the popular Springer text, Programming Challenges: The Programming Contest Training Manual.
  • 操作系统概念

    作者:(美)西尔伯斯查兹

    《操作系统概念》(第6版翻译版)是讨论了操作系统中的基本概念和算法,并对大量实例(如Linux系统)进行了研究。全书内容共分七部分。第一部分概要解释了操作系统是什么、做什么、是怎样设计与构造的,也解释了操作系统概念是如何发展起来的,操作系统的公共特性是什么。第二部分进程管理描述了作为现代操作系统核心的进程以及并发的概念。第三部分存储管理描述了存储管理的经典结构与算法以及不同的存储管理方案。第四部分I/O系统对I/O进行了深入的讨论,包括I/O系统设计、接口、内部结构与功能等。第五部分分布式系统介绍了分布式系统的一般结构以及连接它们的网络,讨论了分布存取策略、分布式文件系统及分布式系统中同步、通信等机制。第六部分保护与安全介绍了操作系统中对文件、内存、CPU及其他资源进行操作的安全与保护机制。第七部分案例研究,分析与讨论了Linux系统、Windows 2000、WindowsXP、FreeBSD、Mach及Nachos等实例。
  • 数据库系统概念

    作者:西尔伯沙茨,科思,苏达尔善

    数据库管理已经从一种专门的计算机应用发展为现代计算环境中的一个核心部分,因此,有关数据库系统的知识已成为计算机科学教育的基本部分。本书介绍了数据库管理的基本概念,包括数据库设计、数据库语言和数据库系统实现。. 本书可作为本科三年级或四年级的数据库入门教材,也可作为研究生一年级的教材。除了具有可作为入门课程的基本内容外,本书还包括可作为课程补充的高级内容或高级课程的入门性材料。
  • 编程珠玑(第2版•修订版)

    作者:[美] Jon Bentley 乔恩•本

    历史上最伟大的计算机科学著作之一 融深邃思想、实战技术与趣味轶事于一炉的奇书 带你真正领略计算机科学之美 多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇不朽的编程“珠玑”,成为世界计算机界名刊《ACM通讯》历史上最受欢迎的专栏,最终结集为两部不朽的计算机科学经典名著,影响和激励着一代又一代程序员和计算机科学工作者。本书为第一卷,主要讨论计算机科学中最本质的问题:如何正确选择和高效地实现算法。 在书中,作者选取许多具有典型意义的复杂编程和算法问题,生动描绘了历史上众大师们在探索解决方案中发生的轶事、走过的弯路和不断精益求精的历程,引导读者像真正的程序员和软件工程师那样富于创新性地思考,并透彻阐述和总结了许多独特而精妙的设计原则、思考和解决问题的方法以及实用程序设计技巧。解决方案的代码均以C/C++语言编写,不仅有趣,而且有很大的实战示范意义。每章后所附习题极具挑战性和启发性,书末给出了简洁的解答。 本书是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。本书的特色是通过一些精心设计的有趣而又颇具指导意义的程序,对实用程序设计技巧及基本设计原则进行了透彻而睿智的描述,为复杂的编程问题提供了清晰而完备的解决思路。本书对各个层次的程序员都具有很高的阅读价值。 书评 “《编程珠玑》是对我职业生涯早期影响最大的书之一,其中的许多真知灼见多年之后仍然使我受益匪浅。” ——Steve McConnell,软件工程大师,IEEE Software前主编,《代码大全》作者
  • Computer Organization and Design

    作者:David A. Patterson,J

    A revised printing for this book will be available in June 2007! Whats New in the Third Edition, Revised Printing The same great book gets better! The revised printing features all of the original content along with these additional features: Appendix A (Assemblers, Linkers, and the SPIM Simulator) has been moved from the CD-ROM into the printed book Corrections and bug fixes Click here to request a desk copy of the revised printing! About the Third Edition In addition to thoroughly updating every aspect of the text to reflect the most current computing technology, the third edition *Uses standard 32-bit MIPS 32 as the primary teaching ISA. *Presents the assembler-to-HLL translations in both C and Java. *Highlights the latest developments in architecture in Real Stuff sections: + Intel IA-32 + Power PC 604 + Googles PC cluster + Pentium P4 + SPEC CPU2000 benchmark suite for processors + SPEC Web99 benchmark for web servers + EEMBC benchmark for embedded systems + AMD Opteron memory hierarchy + AMD vs. 1A-64 New support for distinct course goals Many of the adopters who have used our book throughout its two editions are refining their courses with a greater hardware or software focus. We have provided new material to support these course goals: New material to support a Hardware Focus +Using logic design conventions +Designing with hardware description languages +Advanced pipelining +Designing with FPGAs +HDL simulators and tutorials +Xilinx CAD tools New material to support a Software Focus +How compilers Work +How to optimize compilers +How to implement object oriented languages +MIPS simulator and tutorial +History sections on programming languages, compilers, operating systems and databases Whats New in the Third Edition New pedagogical features Understanding Program Performance -Analyzes key performance issues from the programmers perspective Check Yourself Questions -Helps students assess their understanding of key points of a section Computers In the Real World -Illustrates the diversity of applications of computing technology beyond traditional desktop and servers For More Practice -Provides students with additional problems they can tackle In More Depth -Presents new information and challenging exercises for the advanced student New reference features Highlighted glossary terms and definitions appear on the book page, as bold-faced entries in the index, and as a separate and searchable reference on the CD. A complete index of the material in the book and on the CD appears in the printed index and the CD includes a fully searchable version of the same index. Historical Perspectives and Further Readings have been updated and expanded to include the history of software R&D. CD-Library provides materials collected from the web which directly support the text. On the CD CD-Bars: Full length sections that are introduced in the book and presented on the CD CD-Appendixes: The entire set of appendixes CD-Library: Materials collected from the web which directly support the text CD-Exercises: For More Practice provides exercises and solutions for self-study In More Depth presents new information and challenging exercises for the advanced or curious student Glossary: Terms that are defined in the text are collected in this searchable reference Further Reading: References are organized by the chapter they support Software: HDL simulators, MIPS simulators, and FPGA design tools Tutorials: SPIM, Verilog, and VHDL Additional Support: Processor Models, Labs, Homeworks, Index covering the book and CD contents Instructor Support + Instructor Support is provided in a password-protected site to adopters who request the password from our sales representative + Solutions to all the exercises + Figures from the book in a number of formats + Lecture slides prepared by the authors and other instructors + Lecture notes System Requirements Operating System Most of the content on this CD can be used under any operating system that includes an HTML browser and a PDF viewer. This includes Windows 98 or later, Mac OS 9 and OS X, and most Linux and Unix systems. Some contributed software on this CD is operating system specific. See the installation instructions on the Software page for details. HTML Browser The navigation framework and some of the content on this CD is delivered in HTML and JavaScript. It is recommended that you install the latest version of your favorite HTML browser to view this CD. The content has been verified under Windows 2000 with the following browsers: Internet Explorer 6.0, Mozilla 1.6, Netscape 7.1, Opera 7.23. Under Mac OS X with the following browsers: Internet Explorer 5.2.3, Mozilla 1.6 , Netscape 7.1, Safari 1.2. And under Mandrake Linux with the following browser: Galeon 1.3.8. The content is designed to be viewed in a browser window that is at least 720 pixels wide. You may find the content does not display well if your display is not set to at least 1024x768 pixel resolution. PDF Viewer The CD material includes PDF documents that you can read with a PDF viewer such as Adobe® Acrobat® or Adobe Reader®. Recent versions of Adobe Reader for supported platforms are included on the CD. Visit the Adobe Reader home page for more information. Browser Plugins Some of the material on this CD makes use of Flash® animations. To view this material, you will need to have Macromedia® Flash Player installed. You can install the Shockwave® Player (which includes Flash) on Windows and Macintosh from this CD. Visit the Macromedia homepage for more information. Note that recent versions of some browsers, including Internet Explorer, Netscape, and AOL, already incorporate Flash Player. Some of the material on this CD contains photographic panoramas that can only be viewed with the iseemedia Zoom Viewer browser plugin on Windows and Mac OS 9 platforms. Visit iseemedia's website for download instructions. For instructor resources click on the grey "companion site" button found on the right side of this page. This new edition represents a major revision. New to this edition: * Entire Text has been updated to reflect new technology * 70% new exercises. * Includes a CD loaded with software, projects and exercises to support courses using a number of tools * A new interior design presents defined terms in the margin for quick reference * A new feature, "Understanding Program Performance" focuses on performance from the programmer's perspective * Two sets of exercises and solutions, "For More Practice" and "In More Depth," are included on the CD * "Check Yourself" questions help students check their understanding of major concepts * "Computers In the Real World" feature illustrates the diversity of uses for information technology *More detail below...
  • 图形程序开发人员指南

    作者:Michael Abrash

    Michael Abrash's classic Graphics Programming Black Book is a compilation of Michael's previous writings on assembly language and graphics programming (including from his "Graphics Programming" column in Dr. Dobb's Journal). Much of the focus of this book is on profiling and code testing, as well as performance optimization. It also explores much of the technology behind the Doom and Quake 3-D games, and 3-D graphics problems such as texture mapping, hidden surface removal, and the like. You could get this book from here: http://www.gamedev.net/reference/articles/article1698.asp
  • 编程原本

    作者:Alexander Stepanov,P

    本书提供了有关编程的一种与众不同的理解。其主旨是,实际的编程也应像其他科学和工程领域一样基于坚实的数学基础。本书展示了在实际编程语言(如C++)中实现的算法如何在最一般的数学背景中操作。例如,如何定义快速求幂算法,使之能使用任何可交换运算。使用抽象算法将能得到更高效、可靠、安全和经济的软件。 这不是一本很容易读的书,它也不是能提升你的编程技能的秘诀和技巧汇编。本书的价值是更根本性的,其终极目标是提升你对编程的洞察力。要想从中大获裨益,你需要从头到尾认真学习:阅读代码,证明引理,完成练习。到结束之时,你将看到如何把这里讨论的演绎方法应用到你的程序中,保证你做出的软件部件能一起工作,并表现出它们所应该表现的行为。 书中给出的算法和需求针对某些被操作的类型。有关这些描述的代码(也可以通过Web得到)采用C++的一个小子集书写,这样做是为了让所有有经验的程序员都能理解。这个小子集可以看做一种特殊语言,是由Sean Parent和Bjarne Stroustrup一起设计的。 无论你是一位软件开发者,还是其他以编程作为一项重要活动的专业人员,或者是一名在校的学生,你都会逐渐理解本书的经验丰富的作者多年来一直在教授和阐释的道理:数学对于编程是绝好的东西,理论对于实际是绝好的东西。
  • 计算机程序设计艺术(第2卷 英文版·第3版)

    作者:Donald E.Knuth

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

    作者:派特(Patt.Y.N.)

    《计算机系统概论(原书第2版)》是计算机科学的经典基础教材。全书以自底向上方法帮助学生理解计算机系统的原理,前半部分阐述了计算机底层结构,后半部分讲解了高级语言编程及编程方法学,主要内容包括数据类型及其运算、数字逻辑、冯·诺伊曼模型、汇编语言、输入和输出、TRAP程序和子程序、C语言编程等内容。 《计算机系统概论(原书第2版)》可用作高等院校计算机及相关专业学生的入门教材,也可作为的计算机专业人土和高级程序员的参考用书。 海报: