其他编程语言/工具
-
Verilog HDL高级数字设计(美)Michael D.Ciletti著本书通过大量完整的实例讲解了使用Verilog HDL进行超大规模集成电路设计的结构化建模方法、关键步骤和设计验证方法等实用内容。全书共分11章,涵盖了建模、结构平衡、功能验证、故障模拟和逻辑合成等关键问题,还有合成后设计确认、定时分析及可测性设计等内容。本书结构清晰,内容组织合理,适用于计算机、电子等相关专业本科高年级学生或研究生课程,同时也适用于对学习Verilog HDL及其在现代集成电路设计流中的应用感兴趣的专业工程师和技术人员。 -
代码优化(美)Kris Kaspersky著;谭明金译;谭明金译本书系统深入地介绍了各种代码优化编程技术。全书分为4章。第1章集中介绍如何确定程序中消耗CPU时钟最多的热点代码,即有关所谓程序剖分技术,以及典型剖分工具的实用知识。第2、3章分别全面介绍RAM子系统与高速缓存子系统的代码优化知识。第4章主要介绍机器代码优化技术。各章在讨论基本原理的同时,详细给出了典型的代码实例,并对优化性能进行了定量的分析。该书特别适合于作为应用程序员及系统程序员的学习与开发之用。同时,本书对在硬件方面的专业人员与技术工作者有一定的参考价值。 -
程序员修炼之道(美)Andrew Hunt,(美)David Thomas著;马维达译;马维达译“如果我在管理一个项目,这本书的作者就是我想要的人……如果办不到,我就会要读过他们的书的人。”——WardCuningham《程序员修炼之道》直接从编程的战壕出发,穿过现代软件开发日渐增多的专门化和技术问题,去考察核心的过程——按照需求,编写能工作、可维护、能让用户满意的代码。本书涵盖的主题从个人责任、职业发展,直到用于使你的代码保持灵活、并且易于改编和复用的各种架构技术。阅读本书,你将学会:·与软件腐烂作斗争;·避开重复知识的陷阱;·编写灵活、动态、可适应的代码;·防止靠巧合编程;·通过合约、断言及异常使你的代码“防弹”;·捕捉真正的需求;·无情而有效地测试;·让你的用户满意;·建立注重实效程序员的团队;并且通过自动化使你的开发更严谨。《程序员修炼之道》由一系列独立的部分组成,讲述了许多富有娱乐性的奇闻轶事、有思想性的例子、以及有趣的类比。本书阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,只要每天运用这些建议,你很快就会看到你的个人生产率、准确度、以及工作满意度得到提高。你将学习各种技能,发展各种习惯和态度,从而为你的职业生涯的长期成功奠定基础。你将成为一个注重实效的程序员。《程序员修炼之道》由一系列独立的部分组成,涵盖的主题从个人责任、职业发展,直以用于使代码保持灵活、并且易于改编和复用的各种架构技术,利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。 -
实时系统与编程语言(英)Alan Burns ,(英)Andy Wellings著;王振宇,陈利等译;王振宇译本书全面论述实时系统、嵌入式系统和分布式系统的特征,深入分析设计和实现实时嵌入式系统的需求,并讨论了当前的编程语言和操作系统如何满足这些需求,重点介绍Ada 95、实时Java和实时POSIX。本书还覆盖了在实时领域的最新成果,包括实时CORBA。本书在国外是实时系统方面的畅销教材,涵盖的内容广泛,适合作为高等院校计算机专业的教材,供高年级本科生和研究生使用。本书在国际上是一本实时系统方面的畅销教材。全面论述实时系统、嵌入式系统和分布式系统的特征,深入分析设计和实现实时嵌入式系统的需求,批评性地介绍了当前的编程语言和操作系统对设计和实现实时系统的支持,重点是Ada95、实时Java、实时POSIX以及实时CORBA。本书建议了对于实现不同的实时系统所使用的最佳编程语言。本书覆盖的丰富内容是其他关于实时(或并发)编程语言的书籍所无可比拟的。 -
高效程序的奥秘(美)Henry S. Warren,Jr.著;冯速译;冯速译计算机迷们醉心于全力以赴、坚持不懈地开发代码,寻觅更奇妙更有效的方法,开发更优秀的软件。本书中就有许多读者喜爱的省时省力的技术。事实上,计算机程序员的大部分工作涉及大量算术和逻辑的组合。在本书中,作者与我们一起分享他在应用程序和系统程序的编程实践中所收集的编程技巧,大部分技巧都极有实用价值,而有些技巧则很有趣和出人意料,这使本书成为一本极具吸引力的编程技巧集,它将帮助那些甚至非常老练的程序员们提高编程技艺。论题包括:·实用编程技巧集·常见任务的小算法·2的幂边界和边界检测·位和字节的重排列·整数除法和常量除法·针对整数的基本函数·Gray码·Hilbert空间填充曲线本书适合程序库、编译器开发者及追求优美程序设计的人员阅读,适合用作计算机专业高年级学生及研究生的参考用书。 -
程序设计语言原理(美)Robert W.Sebesta著;张勤译;张勤译本书从为什么学习程序设计语言、评估程序设计语言和语言结构的标准、常见的设计权衡以及基本的实现方法开始讲起,然后简略描述了在本书中讨论的大部分语言的演化。并且在第3章讨论语法和语义,还在第4章为不开设编译课程的学校新增了词法和语法分析的内容。本书主要是描述命令式语言的主要结构的设计问题及其实现,涉及变量、数据类型、表达式和赋值语句、控制语句、子程序、数据抽象设施、支持面向对象程序设计的语言特性(继承和动态方法绑定)、并发程序单元和异常处理等内容。在最后两章描述了函数式程序设计语言和逻辑程序设计语言。本书适用面很广,既可用作计算机专业本科生程序设计语言课程的教材,也可用作自学语言的参考书。经验丰富的计算机工作者也可以用它来更新知识。本书通过陈述各种语言结构的设计问题,分析一些常用语言中这些结构的设计选择,并比较不同的选择方案,来描述程序设计语言的基本概念。本书并不教读者如何使用一种语言,而是讨论语言的结构与特征及其在不同语言中的不同设计与实现,以及如何为给定的任务选择合适的语言。本书所使用的描述方式不但为读者提供对现有的和将来的程序设计语言进行批判性评估所需的工具,而且可以增强读者学习新语言和理解语言实现的重要性的能力。本书适合作为计算机专业本科生程序设计语言原理课程的教材,但对于成熟的程序员,这也是一本深入了解程序设计语言的理想书籍。本书特点:●使用Java、JavaScript、C++。Perl、Ada和Fortran来讨论各种语言结构以及设计选择方案●将面向对象程序设计与非面向对象的命令式语言结合起来讨论●提供产生现有语言的特定设计选择的历史背景 -
Intel汇编语言程序设计(美)Kip R.Irvine著;温玉杰等译;温玉杰译Intel汇编语言程序设计(第四版)本书全面细致地讲述了汇编语言程序设计的各个方面。从微处理器体系结构、工作机制到指令集;从最基本的编译器链接器的使用到高级过程、结构和宏的使用;从用纯汇编编写程序到用VC++,BC++等最新编译器与汇编的混合接口编程;从16位实模式下BIOS,DOS实模式文本及图形程序设计到32位保护模式的Windows程序设计;从磁盘基础知识到Intel指令编码、浮点运算等相关知识都做了深入而细致的讲解。本书是佛罗里达国际大学等多所美国大学采用的计算机基础教材,内容广博,但又讲解得非常深入,书中结合最令人感兴趣的编程问题逐步引出汇编语言的解答,书后有编译器的安装使用以及常用的编程参考资料,随书附带的CD-ROM中配有较新的免费MASM6.11编译器,为读者掌握汇编语言扫清一切障碍,另配以丰富和颇具特色的习题集及解答,使读者能够快速掌握这门公认为很难的语言。如果读者是汇编语言的初学者,本书则提供了最好的起点,如果读者已经熟练掌握了这门语言,重读本书,亦当有所收获。本书对计算机体系结构及基本原理做了相当篇幅的介绍,因此本书不仅可作为高等院校计算机专业汇编语言的教材,也可以作为计算机体系结构和原理的参考资料。本书着重讲述了如何在机器层次思考并解决程序设计的问题,具有以下特点:·详细讲述了数制系统和数据存储的基础知识·所有的例子程序都在Microsoft的MASM6.15编译器下测试通过·讲述了高级语言内嵌汇编代码以及汇编语言程序同实地址模式及保护模式的C/C++程序的链接·附带扩展的指令集手册,其中包含了指令格式和CPU标志的使用·讲述了中断和量和设备I/O·随书附带的CD-ROM中包含了MicrosoftMASM6.15汇编编译器、程序编辑器、一个宏库和本书的源代码第四版的新增内容:·Win32程序设计,包含控制台API和图形应用程序·对过程、递归、堆栈参数、结构和联合进行了更多的介绍·布尔表达式、真值表和流程图·基本的字符串处理、排序和查找算法·实地址模式和保护模式下的位映射图形·IEEE浮点二进制表示法·虚拟机体系结构,IA-32保护模式分段和分页·介绍指令执行周期、内存、多任务、流水线和超标量体系结构·磁盘基础知识,包括磁盘的物理结构、FAT32和NTFS文件的结构在广大的学生和编程爱好者眼中,汇编语言一直被认为是最难学的语言之一,究其原因,主要是因为汇编程序员在着眼于程序逻辑实现的同时还要注重太多的其他细节,这些在学习其他语言时可以不必涉及的细节包括上百条机器指令的用法。一大堆中断的用法和很多与硬件相关的知识。但是很多的汇编书籍似乎并没有考虑到读者的难题,这些书籍往往根据内容而不是根据读者的学习感受来设置章节,数制原理、计算机的硬件结构。寻址、指令、宏的使用和中断等内容都被分割在单独的章节中讲述,这样,读者就不得不在开始学习程序设计方法之前单独学习这些内容,但不和实际应用相结合,这些内容的学习和死记硬背手册无异,难度可想而知。作为作者,KipR.Irvine似乎很了解这一点,所以我们很高兴地看到,本书内容的编排非常适合于学生们从一无所知开始学习汇编语言,作者做了很大的努力使章节之间循序渐进,衔接自然。所有的指令被自然分割在各章中讲述,只有在学习的过程中真正用到某些指令的时候,才详细介绍这些指令。寻址方法、宏的使用、中断的使用等内容也是如此安排的,这样当学生们集中精力学完了汇编语言和高级语言对应的内容后,却惊奇地发现自己已经自然而然地过了指令学习等各种难关。在精心编排讲述传统的16位汇编语言知识的同时,作者也没有忘记在内容的深度和广度上下功夫:书中对虚拟机、多级流水线、超标量体系结构、多任务、IA-32保护内存的寻址和分页。指令编码和有限状态机等概念进行了详细的介绍,另外,本书以大量的篇幅介绍了汇编语言和C语言等高级语言的接口。代码优化实例。数组的实现、查找和排序算法等大量实用性很强的内容,最后,考虑到汇编语言向Windows平台迁移的趋势是不可逆转的,本书在所有内容的介绍中都涉及了32位编程的讲解,并以单独的一章讲述了32位Windows程序编程的基本方法。为了便于读者学习,本书将所有的例子代码收录在本书附带的光盘中,并在作者的网站上提供了更多的源代码例子。每章的最后都设置了习题,并在网站上提供了习题的答案。本书非常适合于作为大中院校汇编课程的教材,也是汇编语言爱好者不可多得的自学教材。本书的第11章由罗云彬翻译,其他所有章节由温玉杰。张家生翻译。另外,罗云彬负责本书全书的审校工作。由于时间紧促,加上译者水平有限,书中难免存在不足和疏漏之处,敬请读者指正和谅解。《Intel汇编语言程序设计》一书第四版介绍的知识是基于IntelIA-32处理器体系结构的。从程序员的角度来看,本书适合作为下列计算机专业课程的教材:●汇编语言程序设计●计算机系统基础知识●计算机体系结构基础知识尽管本书最初是为普通高校的学生编写的,但现在的读者群已经远不止于此了。很多大学都使用本书作为计算机体系结构课程的入门教材。例如,佛罗里达国际大学就采用本书作为计算机系统基础知识:一门将引出更全面深人地探讨计算机体系结构的课程的教材。本书的当前版本包含了以下主题,这些主题将自然地引出计算机体系结构、操作系统和编译器编写等后续课程:●虚拟机的概念●基本的布尔运算●指令执行周期●内存访问中时钟周期的使用●中断●多级流水线●超标量体系结构●多任务●加载和执行程序●浮点数的二进制表示本书中的其他一些主题则是与IA-32体系结构相关的,书中使用的信息来自于它的手册:●IA-32保护内存的寻址和分页●实地址模式下的内存分段●中断处理●直接硬件I/O●指令编码对于以后将要学习计算机科学课程的读者来说,书中给出的下列例子是很有帮助的:●查找和排序算法●高级语言接口●有限状态机●代码优化实例本书的当前版本还涉及以下一些与程序设计相关的新内容:●有关数据定义的更全面详尽的解释●有关寻址方式的更细致的讲解●适用于几乎所有过程的简化链接库,它们所需的输人参数更少,如新的显示CPU寄存器和内存内容的过程以及延时过程●对于自顶向下程序设计的讲解和说明●使用流程图作为代码生成工具●对汇编语言伪指令、宏和操作符等内容的更加全面而详尽的说明。例如:本书全面深入地讲解了PROC,PROTO和INVOKE伪指令●更完整地介绍了结构,包括嵌套结构和结构数组●IF,WHILE和REPEAT等块结构语句(这是MASM的高级特性)●介绍了视频显示,包括使用BIOS和直接内存映射技术●鼠标程序设计●Win32控制台程序设计,直接调用WindowsKernel32库●更多的数组操作实例本书仍然是一本程序设计教材读者要注意的是,本书的着重点仍然在于其原来的任务:教会学生如何在硬件层次编写和调试程序。本书并不能够替代那些全面介绍计算机体系结构的书籍,但它的确给了学生们在计算机真实工作的环境中编写软件的第一手经验,这一点的价值绝不可低估,因为他们将在同机器的即时接触中牢记大量的理论知识。在工程课程中,学生们将学习如何构建原型,在软件课程中,学生们将学习如何编写程序。在这两种课程中,原来获得的经验将给予他们在任何操作系统或面向机器的环境中工作的信心。实模式和保护模式教师们都表示愿意转向使用Intel保护内存模式的32位程序设计,本书强调了32位保护模式,但其中仍然有三章全部讲述实模式程序设计。书中用一整章内容讲述键盘。视频显示(包括图形)和鼠标的BIOS程序设计,还有一整章是关于使用中断功能调用MS-DOS程序设计的。对于学生们而言,获得一些直接面向固件和硬件的程序设计经验是非常有益的。本书前面部分的例子几乎全部是32位的基于文本的应用程序,它们运行于保护模式下并使用平坦模式,这样程序就显得非常直观,学生们不必处理段-偏移寻址这类问题。书中用特别标记的段落及提示框提示学生实模式和保护模式程序设计之间的细微差别,其中的大部分差别都封装在本书的两个链接库中了。链接库学生们使用两个版本的链接库进行基本的输入输出。32位版本的链接库(Irvine32.lib)可在任何版本的MS-Windows的Win32控制台模式下工作,16位版本可在MS-DOS,MS-Windows和Linux的DOS模拟器下工作.在本书后面部分的章节中,两个链接库中的所有函数都被逐一例举,读者还可以根据自己的需要修改库.应该注意的是,链接库仅仅是为了方便使用,面不是用来阻止学生们学习自己进行输入输出编程的。包含的软件和例子本书中所有例子程序都已经使用Microsoft6.15版本的宏汇编编译器测试通过。在大多数情况下,例子程序可以用Borland的TASM4.和5.编译,但是有些特性是Borland汇编编译器所不支持的。网站信息有关更新和勘误可以在下面的网站上找到,其中包括教授们要在章节授课结束时布置的额外的程序设计项目:http://www.nuvisionmiami.com/books/asm如果由于某种原因造成上面的网址无法访问的话,可通过在www.prenhall.com搜索书名或作者全名"Kiplrvine"来获取关于本书的信息以及网站的最新链接。作者的e-mail地址是kip@nuvisionmiami.Com。总体目标本书的每个目标都是为了激发学生们对汇编语言相关主题的兴趣,以此来拓展他们的知识:●IntelIA-32处理器体系结构和程序设计●汇编语言伪指令、宏、运算符和程序结构●程序设计方法学,展示如何使用汇编语言创建系统级软件工具和应用程序●计算机硬件控制●汇编语言程序、操作系统和其他应用程序之间的交互。作者的目标之一是帮助学生在机器层次思考并处理程序设计中遇到的问题。在程序设计时,把CPU看成是一个交互工具并学会尽可能直接地监视其各种动作是很重要的。调试器是程序员最好的朋友,这不仅仅是因为它可以用来捕捉错误,更重要的是它可以作为了解有关CPU和操作系统的教学工具。作者鼓励学生们探究高级语言表象之下的内在细节,这样可以认识到大多数高级语言都被设计成可移植的,从而使其独立于主机系统。除了简短的例子之外,书中还包括了115个马上就可以运行的例子程序,这些程序解释了教材中相应的指令和一些思想。MS-DOS中断和指令助记符等参考材料可在本书"前言"的最后找到。书中一个全面的链接库使学生在写第一个程序时更容易访问用户界面,书中包含的宏库也可能会为教授和学生的进一步开发提供灵感。需要的背景知识至少应该已经能够用其他一门程序设计语言自信地编写程序,最好是使用Pascal,Java,C或C++,书中的一章研究了汇编语言和C++的接口,其内容有一定的深度,因此读者手头有一个编译器是很有帮助的。作者在计算机科学和管理信息系统专业课还有其他一些工程课上使用了本书作为教材,授课时使用了MicrosoftVisualC++6.和BorlandC++5.来处理与高级语言接口的例子。本书特点完整的程序清单本书附带的CD-ROM包括了书中所有例子的源代码,作者的网站上有更多的程序清单。本书还包含了一个扩展链接库,其中包含了3多个用于简化用户输入输出、数值处理、磁盘和文件操作以及字符串处理的函数。在课程的开始阶段,学生可以使用该库增强他们的程序,随后可以创建自己的过程并把它们添加到链接库中。16位和32位库的完整源代码均已给出。程序设计逻辑书中的两章强调了布尔逻辑和位操作,作者有意尽量把高级语言程序设计逻辑同机器的底层细节联系起来,这有助于学生高效地实现程序并更好地理解语言编译器是如何生成目标代码的。硬件和操作系统的概念前两章介绍了基本的计算机硬件和数据表示方法的概念,包括二进制数。CPU体系结构。状态标志和内存映射等。另外还包括了计算机硬件的概览和对Intel系列处理器历史演变的介绍,这些有助于读者更好地理解目标计算机系统。结构化程序设计方法从第5章开始,本书重点强调了过程和模块分解。学生们要解决复杂的程序设计问题,这需要精心组织代码并处理复杂性的能力。磁盘存储概念学生们将从硬件和软件两个方面学习PC磁盘存储系统的基本原理。创建链接库学生们可在本书链接库中自由地添加新过程,也可以创建自己的库。他们将学会使用工具箱方法进行程序设计,编写在多个程序中可重用的代码。宏和结构本书中有专门一章讲述如何创建结构。联合和宏,这在汇编语言和高级语言中都是很重要的。带高级操作符的条件宏使宏更加专业。与高级语言的接口本书用一章的内容专门讲述汇编语言与C和C++的接口,这对于那些可能要以高级语言程序设计谋职的学生来说实在是很重要的,他们将学会优化自己编写的代码并看到编译器优化代码的实际例子。教学辅助所有的程序清单都可在随书附带CD-ROM和Web站点上找到,上面还为教师提供了所有习题。编程练习的解答和汇编语言的相关资源。授课顺序第1章至第8章讲述了汇编语言的基础知识,授课时应当按顺序讲授。作者做了很大的努力使章节之间衔接自然。第1章(基本概念):汇编语言应用程序,基本概念,机器语言和数据表示法。第2章(1A-32处理器体系结构):基本微处理器设计,指令执行周期,IA-32处理器体系结构,IA-32内存管理,微机构成,输入输出系统。第3章(汇编语言基础):汇编语言的介绍,链接和调试,定义常量和变量。第4章(数据传送。寻址和算术运算):简单的数据传送和算术运算指令,汇编-链接-执行周期,操作符。指令。表达式。JMP和LOOP指令以及间接寻址。第5章(过程):与外部库的链接,本书链接库的描述,堆栈操作,定义和使用过程,流程图,自顶向下的结构化设计。第6章(条件处理):布尔和比较指令,条件跳转和循环,高级逻辑结构,有限状态机。第7章(整数算术指令):移位和循环移位指令,乘法和除法指令,扩展加法和扩展减法指令,ASCII和压缩十进制算术指令。第8章(高级过程):堆栈框架,局部变量,参数声明,递归和高级参数传递。在第9章至第16章中,教师可以根据课程设置的情况,选择与课程最适合的主题以任意顺序讲授。第9章(字符串和数组):字符串操作指令,字符和整数数组的操作,二维数组,数组的排序和查找。第1章(结构和宏):结构,宏,条件汇编指令,定义重复块。第11章(32位Windows编程):保护模式内存管理。使用MicrosoftWindowsAPl在控制台上显示文本及色彩。第12章(高级语言接口):参数传递约定,高级语言内嵌汇编代码,汇编代码模块同C/C++,程序相链接。第13章(16位MS-DOS程序设计):调用MS-DOS中断进行控制台和文件输入输出操作。第14章(磁盘基础知识):磁盘存储系统,扇区.簇和目录,文件分配表,处理MS-DOS错误码,驱动器和目录操作。第15章(BIOS程序设计):键盘输入.视频文本和图形编程以及鼠标程序设计。第16章(高级MS-DOS程序设计):自定义的段,运行时程序结构和中断处理。第17章(高级主题):使用I/O端口控制硬件,指令编码,浮点数的二进制表示,浮点算术运算。●附录A:汇编编译器的安装和使用●附录B:Intel指令集●附录C:BIOS和MS-DOS中断●附录D:MASM参考手册 -
8088/8086汇编语言程序设计李兆凤编汇编语言是一种面向机器的语言。它能够利用计算机所在硬件性并能直接控制硬件,在微型计算机系统的开发应用和过程控制和特别受到重视。考虑到国风当前广泛使用8088/8086和80×86系统计算机的实际情况,本书以8088/8086系统的汇编语言作为学习的对象。学习了8088/8086系统的汇编语言程序设计后,掌握更高层次的汇编语言也就有了基础。为了能为更多的读者服务,本书在编写中特别注重由浅入深、循序渐进并多举实例,使读者通过自学也能掌握程序设计方法。因此,本书适用于高等院校及成人教育的计算机应用专业,也可以作为其它专业学习计算机知识的教学参考书。本书共分十章。第一章到第四章介绍了8088/8086系统结构,指令系统和汇编语言;第五章到第九章介绍了各种类型的程序设计,特别突出了非数值处理、输入/输出及中断程序设计;第十章介绍了系统调用及其程序设计。 -
VISUAL FOXPRO6.X中文版程序设计章立民编著本书由浅入深,向读者介绍了在VFP 6中分析、提高程序运行速度,使用OLE、宏、名称运算式和Evaluate( )的方法,详细讲解了结构化查询语言SQL,并且讨论了VFP 6的新特性——以程序控制方式对项目进行管理。本书的一大特点是围绕主从结构(Client/Server)数据库系统展开逐步详细的介绍,可以帮助读者在VFP 6下快速实现主从结构系统。本书针对有一定基础的读者,如果认真学习本书必能受益匪浅。 -
MATLAB高级应用清源计算机工作室编著本书系统地介绍了利用 MATLAB 实现工程计算及其运算结果的可视化技术以及可视影像在 MATLAB 中的数字化处理技术,属于 MATLAB 的高级应用
