本书是一本将理论与实践有机结合的计算机工作原理实践指南,包含41个实践项目,涵盖了从电路设计到代码编写的广泛主题。通过本书,读者将实践构建数字电路、设计一个猜谜游戏、将十进制数字转换为二进制、检查虚拟内存使用情况、运行自己的Web服务器等,从引人入胜的实践项目中学习如何像软件工程师一样思考、用数据描述真实世界的概念,使用欧姆定律和基尔霍夫定律分析电路的特性,以及如何像计算机一样思考、一步一步地在脑海中执行一个程序。
计算机软件界大的变迁是从串行编程转向并行编程。其中,CUDA取得了巨大的进展。本书特别针对CUDA学习者而写。在保证程序正确性前提下,侧重于程序性能的调优。对于没有CUDA或者并行编程的任何经验的读者随着本书的深入,将越来越可以胜任CUDA的编程工作,帮助你从不知晓并行编程的程序员成长为能够全方位发掘CUDA潜力的专家。对已经熟悉并行编程概念和CUDA的程序员,本书包含丰富的学习材料,专设章节详细讨论GPU的体系结构,包括新的费米和开普勒硬件,以及如何将它们的效能发挥到极致。任何可以编写C或C++的程序员都可以在经过几个小时的简单训练后编写CUDA程序。通过本书的完整学习,你将从仅能得到数倍程序加速的CUDA编程新手成长为数十倍加速的高手。
本书涵盖数电、体系结构、汇编语言、编译器、操作系统等计算机核心课程的基础内容,结合项目实践能够对整个计算机学科建立宏观的理解,并能完成制作一个基本计算机系统的任务。
本书是模拟CMOS集成电路设计方面的经典教材,介绍模拟CMOS集成电路的分析与设计,着重讲解该技术的最新进展和设计实例,从MOSFET器件的基本物理特性开始,逐章分析CMOS放大单元电路、差分放大
本书以Apache RocketMQ 4.9.5(编写本书时最新的4.x版本)为基础,从Apache RocketMQ 的实际使用、原理剖析,大规模消息集群下企业级落地的实践以及所面临的挑战,逐一由浅入深地进行讲解。 全书分3篇,共16章。基础篇包含第1~4章,主要讲解Apache RocketMQ 入门以及如何掌握Apache RocketMQ 的基础使用。原理篇包含第5~12章,主要讲解了消费原理、负载均衡原理、顺序消息原理等核心的RocketMQ部分。进阶篇包含第13~16章,主要讲解消息幂等、双活设计等进阶为架构师必须掌握的内容。讲解过程中抛弃了传统的源码解析这种较枯燥的手段,而是更多地利用以下方式帮助读者更快、更轻松地接受Apache RocketMQ的原理:通过近百张原创的手绘图,形象地描述Apache RocketMQ 的运作过程、原理;通过与Kafka、RabbitMQ等成熟的消息中间件产品做对比的方式,有助于读者对相关知识触类旁通,举一反
本书的目的在于呈现支持赛博物理系统交互仿真的SysML扩展的基本原理和技术路径,读者将从本书中理解并掌握与物理交互和信号流仿真的模型设计、仿真运用的关键问题以及解决思路,并可从与相关软件工具的应用介绍中得到有关模型开发、模型库建立的有益指南。在MBSE 应用中,工程实践人员将学习借助统一的系统建模语言解决跨学科交互仿真的建模技术问题。 同时,该书还可作为系统工程、赛博物理系统、自主系统等方向研究生的教材,使其有机会系 统地学习关于物理交互和信号流仿真的最新理论,并通过具体步骤、案例讲解等的指导,领悟 MBSE应用中所倡导的协同建模、协同仿真等相关新型技术的基本方法和实现方式。
了解计算机软硬件的工作原理可以为理解复杂代码打下坚实的基础,从而提升对代码的控制力。本书围绕如何将高级语言代码翻译成汇编语言、操作系统硬件资源管理、数据的编码、硬件的十进制数据处理、程序代码和机器代码等主题,解释了现代计算机的工作原理;从内存组织、二进制逻辑和数据类型等基本概念开始,逐步探讨它们在汇编语言层面的实现方式。全书共21章,涵盖了数据存储、逻辑门和晶体管、中央处理器、汇编和机器代码、数据结构、面向对象编程等内容。 本书适合作为高等院校计算机组成原理相关课程的参考教材,也适合有编程基础的人阅读。
本书介绍了一系列可用于构建可扩展系统的软件架构方法和分布式技术。本书内容分为四部分:第一部分是基础知识,包括实现可扩展系统的基本机制、分布式系统的基本特征以及并发编程的简介;第二部分重点介绍如何扩展处理请求的能力,涵盖通过诸多架构方法(更多的计算资源、负载均衡、分布式缓存、异步消息以及基于微服务的架构)来扩展系统;第三部分介绍扩展数据层的相关知识,这是分布式系统理论最突出的地方;第四部分介绍用于大规模处理流式事件的架构和技术。
继MIPS版和ARM版之后,本书与时俱进地推出了RISC-V版。全书从计算机体系结构的角度介绍数字逻辑设计的基础知识,从基本的二进制数开始,详细讨论RISC-V处理器的设计原则、技术与方法。本书首先介绍数字逻辑门,接着讲解组合电路和时序电路的设计,并以这些基本的数字逻辑设计概念为基础,重点介绍如何设计真实的处理器。书中包含大量示例,并分别用SystemVerilog和VHDL给出相应数字系统设计的实现。本书不仅反映了当前数字电路设计的主流方法,而且突出了计算机体系结构的工程特点,适合高等院校计算机相关专业的学生阅读,也适合从事处理器设计的技术人员参考。
本书介绍Kafka的技术原理和应用技巧。内容包括如何安装和配置Kafka、如何使用Kafka API、Kafka的设计原则和可靠性保证,以及Kafka的一些架构细节,如复制协议、控制器和存储层。本书列举了一些 流行的Kafka应用场景,比如基于事件驱动的微服务系统的消息总线、流式处理应用程序和大规模数据管道。通过学习本书,你不仅能够深入理解这项大数据核心技术,还能够将所学知识付诸实践,在生产环境中 好地运行Kafka,并基于它构建稳健的高性能应用程序。
本书采用结构化方法来介绍计算机系统,书的内容完全建立在“计算机是由层次结构组成的,每层完成规定的功能”这一概念之上。作者对本版进行了彻底的更新,以反映当今 重要的计算机技术以及计算机组成和体系结构方面的 新进展。书中详细讨论了数字逻辑层、微体系结构层、指令系统层、操作系统层和汇编语言层,并涵盖了并行体系结构的内容,而且每一章结尾都配有丰富的习题。本书适合作为计算机专业本科生计算机组成与结构课程的教材或参考书,也可供相关领域技术人员参考。
\"本书系统介绍鲲鹏云服务基本概念、云服务类型、云服务解决方案、鲲鹏应用迁移、容器、容灾、上云流程等内容,让读者了解鲲鹏云的技术和生态。全书共7章,分别介绍云服务的概况、鲲鹏云基础云服务的主要类别、鲲鹏云解决方案、迁移应用到鲲鹏云、鲲鹏云容器和云容灾技术、华为云迁移等。 本书可以作为鲲鹏产业学院专业核心课程的教材,帮助学生了解大数据发展过程与基本知识,熟悉大数据框架的基本原理与发展现状,培养大数据平台设计、分析应用能力。本教材也可作为普通本科院校大数据、计算机等计算机类专业课程的选修课材料,以及作为高职高专计算机类专业的专业课程教材。 \"
本书编者倡导“自主编程”,以问题解决为主线,致力于提升读者的计算思维与编程技能,引导读者科学地学习算法。全书共分为四章: 章重点阐述数据抽象的方法及如何选择合适的数据结构,并介绍线性数据结构的基本应用;第二章通过生动的例子,详述了模拟、解析和贪心这三种策略,展示了如何结合严密的算法逻辑与实际操作经验来解决问题;第三章则以深入浅出的方式,讲解了“大化小”的思维方式,介绍了如何利用递推、分治和动态规划等算法来简化和解决复杂问题;第四章全面剖析了好算法的标准,并详细介绍了优化算法时间复杂度和空间复杂度的常用技巧。 本书可以作为数据结构和算法入门的培训教材,也可以作为准备参加全国信息学奥林匹克竞赛的学生赛前集训用书,还可以作为有一定编程语言基础的算法爱好者的参考书籍。
快速发展的红利、优胜劣汰的挑战、与生俱来的混乱、同混乱抗衡的规范……这些都是前端从业者无法逃避的现状。有人说,做好业务支撑是活在当下,而做好技术基建是活好未来。当业务量到达一定量级时,成为“规范制定者”,成为“思考者”,像“架构师”一样思考问题,才能 终成为“优胜者”。本书内容不是简单的思维模式输出,不是纯粹“阳春白雪”的理论,也不是社区搜索即得的 Webpack配置罗列和原理复述,而是从项目痛点中提取出的基础建设的意义,以及从个人发展瓶颈中总结出的工程化架构和底层设计原理。本书不仅能帮助开发者夯实基础,还能为开发者实现技术进阶提供帮助和启发。
本书以信息处理为主线,系统全面地介绍了计算机系统的原理和组成,注重知识传授和抽象思维能力培养。全书共9章,主要内容包括:计算机系统概述、数据的机器表示、存储器系统、运算器及运算方法、指令系统、中央处理器、系统总线、外围设备和输入/输出系统等。本书内容由浅入深,通俗易懂,结构清晰。本书通过小型案例、考题分析、综合题详解等解析学习过程中常见的重点和难点,帮助读者 好地掌握计算机组成原理的基本知识。本书紧扣新时代课程思政主题,提供阅读材料和课程思政元素,将知识传授与价值 相结合。 本书可作为高等院校计算机类及相关专业课程的教材,也可作为考研学生和计算机工程技术人员的参考书。