基本信息

编辑推荐
---------------------------8071113 - 计算机系统:嵌入式方法---------------------------
探索全面推动从微型嵌入式设备到全球物联网的现代计算机系统技术
内容简介
计算机书籍
---------------------------8083845 - 计算机系统解密:从理解计算机到编写高效代码---------------------------
本书分为三部分。第1部分探讨了计算机硬件,包括内部语言、组合逻辑、顺序逻辑、组成原理、系统结构、通信接口等。第二部分研究了在硬件上运行的软件的行为和表现。第三部分涉及编程的艺术--与他人合作写出好的程序。
---------------------------8071113 - 计算机系统:嵌入式方法---------------------------
这是一本从嵌入式角度探索计算硬件和软件原理的综合教科书。本书将逐步揭示如何在现实世界中运用这些计算原理构建计算机系统,从小型嵌入式设备到仓库大小的计算机集群,以及这些概念是如何通过互联网在全球范围内相互连接的。《计算机系统:嵌入式方法》首先会完整地讲述主要的硬件组件——包括处理器、内存、存储设备与性能加速器;接着又充分探讨操作系统、连接以及网络。通过此书,您将了解计算机硬件和软件是如何协同工作来支持无处不在的计算、物联网、移动计算技术以及最小到最大的应用和程序。
作译者
---------------------------8083845 - 计算机系统解密:从理解计算机到编写高效代码---------------------------
关于我们
客户服务
友情链接
---------------------------8071113 - 计算机系统:嵌入式方法---------------------------
[英]伊恩·文斯·麦克洛克林(Ian Vince McLoughlin) 著:伊恩·文斯·麦克洛克林(Ian Vince McLoughlin)是英国肯特大学计算机学院院长、计算机教授。 在职业生涯的30多年中,他在三大洲一直从事工业、政府和学术领域工作并专注研究与创新。 他也是一名计算机工程师,曾经参与设计过对流层和太空中的计算系统,以及海底通信网络;在民用领域,他曾将嵌入式设备设计应用到喉咙手术上帮助病人说话。 麦克洛克林教授同时是IET会员、IEEE高级会员、英国注册工程师和全欧工程师。
目录
8071113 - 计算机系统:嵌入式方法 - 9787111657224 - 机械工业出版社 - 定价 139
8083845 - 计算机系统解密:从理解计算机到编写高效代码 - 9787111689874 - 机械工业出版社 - 定价 129
---------------------------8083845 - 计算机系统解密:从理解计算机到编写高效代码---------------------------
译者序
前言
致谢
作者简介
审校者简介
引言1
第1章 计算机的内部语言12
1.1 什么是语言12
1.2 书面语言13
1.3 比特13
1.4 逻辑运算14
前言
---------------------------8083845 - 计算机系统解密:从理解计算机到编写高效代码---------------------------
我天生就是爱钻研的人。我父亲说,在荡秋千之前,我总会想象有一个开关打开秋千,荡完秋千之后又会关上它。机器仿佛跟我说了它的内部原理。我像C-3PO一样懂得“水分蒸发器的二进制语言”。我很幸运能成长在那个没有显微镜就能审视大多数事物的工作原理的年代。
现在回想起来,我在美国新泽西州的童年非常离奇而有趣。小时候,我对每个东西都要修一修补一补,这事让妈妈很头痛。爸爸妈妈给了我很多工具包,但是当我把它们合在一起做一些书上没有的项目时,他们就会感到不安。枕头防盗报警器的出现使这事达到了高潮,它抓住了“牙仙子”的行动—没有经济条件下的一种选择,但这个选择还是挺令人满足的。我收集坏了的电视机和一些被丢掉的家电,把这些东西拆了,了解它们是怎么运行的,再用那些零件做出些别的东西。我最喜欢的玩具之一是我爸爸1929年的建造模型。那个年代的太空计划让我对科技产生了浓厚的兴趣。我至今还记得有一天晚上和爸爸站在我们家的前院里,看着Echo 1飞过头顶的场景。
大多数孩子都有一个送报纸的兼职,而我是做修电视机和收音机的兼职。我的父亲在IBM公司工作,有时我也会和他一起去上班,他单位里的大型计算机让年幼的我非常震撼。八岁那年,他带我去大西洋城的电子展,我记得当时我玩的是一台IBM 1620。我还记得我对泰克(Tektronix)展台上的设备很着迷。可能是受此影响,我后来选择进入该公司工作。一年后,我去了纽约的世界博览会,被贝尔系统的展品所震惊。后来一个偶然的机会,我得以与其中一位设计师一起工作。
我接受了很令人惊奇的公立学校教育,当然这样的教育在美国已经不存在了。我和同学在五年级的时候可以随意传看装水银的壶。上六年级时我炸毁了化学实验室,但并没有受到关禁闭的处罚,反而从这些经历中学到了很多知识。(现在我还记得制作三碘化氮的配方。)我记得我八年级的科学老师带着我们离开学校,去纽约市看电影《2001:太空漫游》,因为他认为这很重要。他做这件事的时候并没有征求学生父母的允许,如今这么做很有可能丢掉工作,或者受到更严重的处罚。我们在高中化学课上做火药,在物理课上到足球场互相射火箭玩,在生物课上划破自己的手指做血型测试。这与如今的情况很不一样,如今一点点危险都会让老师们焦虑不安。实验室里湿漉漉的地板都能让他们担心,觉得有点儿水就要发出警告。美国政府官员对科学不屑一顾,区分不出科学行为和恐怖主义行为。
学习以外,父母给我报名参加了我喜欢的童子军,以及我讨厌的少年棒球联合会。童子军教会了我很多关于物质世界的知识,从骑马到安全地玩火到户外生存。而少年棒球联合会只会让我觉得我不喜欢团体运动。
在那个年代,业余无线电是很重要的,因无线电设备经常需要修理。我自告奋勇加入当地民防应急广播通信集团,只是为了能捣鼓捣鼓设备。该集团有一个原始的无线电电传打字系统,我重新设计了这个系统,最后将其用于其他市政设施。电传打字机是我很喜欢的三维立体装置。
上高中的时候,一个朋友给我介绍了一个探索者童子军的岗位,需要每周一晚上在默里山附近的贝尔实验室值班。我加入了,然后就开始接触计算机,当时的计算机有房子那么大。我被迷住了。没过多久,我就早早地离开了学校,搭车去实验室,说服别人让我进去工作。我参与了一连串令人惊叹的暑期工作,与不可思议的人一起工作,这改变了我的生活。我把头伸到别人的实验室里东张西望,好奇实验室里的仪器设备,顺便询问他们在做什么,就这样我学到了不少知识。虽然我打算学习电气工程,但是硬件项目是不可能在一个夏天完成的,最后我给他们写了软件。
我觉得对我的童子军指导者们最好的纪念方式是,一旦我有能力做到,就跟随他们的脚步,努力帮助新一代年轻技术员走上他们的道路。事实证明这很困难,因为美国研究的鼎盛时期已经过去,而是更加注重增加股东价值;产品本身的价值不及产品带来的利润重要,这使得很难证明研究的价值。公司出于责任的考虑,很少再让孩子们在场地上乱跑了。我原本以为自己会作为童子军一直工作,但因为童子军采用了一系列我不支持的政策而作罢。相反,我是志愿在当地的学校工作。
我开始写这本书是为了补充我志愿教的一门课。当时互联网还没有像今天这样发达。我住在一个相当贫穷的农业社区,考虑到学生们无法负担补充材料的开销,这本书的初稿试图包含所有的内容。但事实证明这是一个不可能完成的任务。
现在从网上可以找到很多不同的编程语言和概念的资料,而且大多数人在家里、学校或图书馆就可以上网。我重写了这些材料,希望读者可以更容易地在网上找到更多的信息。所以,如果有什么不清楚的地方,或者你想知道更多的信息,就去查一下。
最近我认识的一些学生说,他们对编程教育的方式感到失望。虽然他们可以在网上找到信息,但也一直在问可以在哪里找到他们需要的一切。这本书就是为了提供那些资源而写的。
我很幸运,能与计算机一起成长。很难想象如果我在没有背景知识的情况下,跳到今天这个成熟的计算领域会是什么样子。写这本书时,最具挑战性的部分是考虑要从多大程度上追溯过去的例子,以及多大程度上选择现代技术的元素来讨论。我最终选择了一种复古的方式,这样人们可以从更古老、更简单、更容易理解的技术中学习到大部分必要的东西。较新、较复杂的技术是用与旧技术相同的构件构造成的,了解这些构件可以使人们更容易理解新技术。
如今,时代不同了。小工具更难拆开、维修和更改。公司正在滥用法律,如数字千年版权法(DMCA),阻止人们修复自己的装备。幸运的是,这在一些地方促进了“修理权”法律的诞生。作为美国人,我们从政府那里得到形形色色的信息:一方面,我们被鼓励从事STEM职业;另一方面,我们看到科学被诋毁,STEM工作被外包。如果这种环境在半个世纪前就存在的话,不知道美国是否还会成为科技强国。
不过,也有亮点。创客空间如雨后春笋般涌现。孩子们可以建造东西,并且乐在其中。电子零件从来没有这么便宜过,只要你不想要带线的。将我小时候的所有计算机组合在一起也没有现在的智能手机处理功能强大。计算机的价格比人们想象的要便宜,像Raspberry Pi和Arduino这样的小型计算机,价格比一个比萨还便宜。
媒体评论
---------------------------8083845 - 计算机系统解密:从理解计算机到编写高效代码---------------------------
许多程序员对使程序运行的底层技术并不熟悉。但是,如果希望程序运行良好,而不是充满了难以发现的bug,就要关心代码是如何正常运行的,谁都不希望自己因为代码安全问题而成为新闻的主角。
网上有很多技术细节,但都没有整理或收集到一个方便的地方。在本书中,资深工程师Jonathan E. Steinhart深入探讨了计算机背后的基础内容,比如计算机硬件、软件在硬件上的行为,以及随着时间的推移,人们如何解决问题等主题。
你将学到:
现实世界是如何转换成计算机能理解的形式的,比如位、逻辑、数字、文本和颜色。
组成计算机的基本构件,包括逻辑门、加法器、译码器,寄存器和存储器。
为什么设计与计算机硬件(特别是内存)相匹配的程序可以提高性能。
如何将程序转换为计算机能够理解的机器语言。
软件构建块是如何结合起来创造Web浏览器等程序的。
让程序更高效的巧妙技巧,如循环不变式、强度削弱和递归细分等。
计算机安全和机器智能的基础知识。
项目设计、文档编制、日程安排、可移植性、维护和其他实用的编程经验。
了解代码在计算机上运行时到底发生了什么将帮助你编写更好、更高效的代码。