【黑皮书】
文章平均质量分 89
记录自己学习国外优秀计算机书籍笔记
耀耀_很无聊
有时候不去逼自己一把永远不知道自己有多优秀!
展开
-
Java语言程序设计 前言
本专栏所有文章均为笔者自己在阅读**《Java语言程序设计(基础篇)》[美] 梁勇 著 ** 以及参考其他大佬的文章后的学习笔记及个人感悟,以此来记录自己的学习历程。学习本书及本专栏文章:汇编语言、计算机科学导论、C语言等相关知识。原创 2024-07-29 19:45:33 · 178 阅读 · 0 评论 -
第二章 基本程序设计
本章的重点是学习程序设计基础技术、以进行问题求解。原创 2024-08-03 11:33:17 · 697 阅读 · 0 评论 -
第三章 选择
和所有高级程序设计语言一样,Java也提供选择语句:在可选择的执行路径中做出选择的语句。如下便是一个简单的示例:假设现在需要求一个圆的面积,变量radius为圆的半径。给radius赋一个负值,程序就会打印一个无效的结果。如果半径是一个负值,是不希望程序计算面积的,那么该如何处理这种情况呢?选择语句要用到的条件采用布尔表达式计算。布尔表达式是计算结果为布尔值true或者false的表达式。原创 2024-08-05 14:02:25 · 554 阅读 · 0 评论 -
第一章 计算机、程序和Java概述
计算机包括硬件和软件两部分。计算机是由以下几个主要的硬件组件构成的:(如下图)中央处理器(CPU)内存(主存)存储设备(例如,磁盘和光盘)输入设备(例如,鼠标和键盘)输出设备(例如,显示器和打印机)通信设备(例如,调制解调器和网卡)这些组件通过一个称为总线(bus)的子系统连接。原创 2024-07-29 23:52:57 · 358 阅读 · 0 评论 -
计算机组成原理 前言
本专栏所有文章均为笔者自己在阅读《计算机组成原理》[英] 艾伦·克莱门茨著 以及参考其他大佬的文章后的学习笔记及个人感悟,以此来记录自己的学习历程。《计算机组成原理》[英] 艾伦·克莱门茨著。原创 2024-07-22 19:44:20 · 234 阅读 · 0 评论 -
第一章 计算机体系结构
请注意:这里指的是计算机系统,而不是计算机上的操作系统,二者不能化等价关系。笔者看来,粗略上来讲是为了描述计算机的软硬件组成的一个(是一个的概念,并没有具体的实体)。举例来说,就是如果把计算机比作一套房子,而计算机体系结构则是这个房子的基础结构,硬件则是这个房子的组成的物理上的材料,如”砖混、钢筋“;软件则指该房子的生活配置,如沙发,水源等等。这里主要还是以描述计算机为主,则不牵涉其他过多的内容。这里给出一张计算机体系结构的描述图包括读取并执行程序的中央处理单元。原创 2024-07-13 00:48:39 · 842 阅读 · 0 评论 -
第二章 数字系统
什么是数字系统?定义了用独特的符号(数码)来表示一个数字,在不同的系统中,一个数字有不同的表示方法。使用来表示数字。比如: 阿拉伯数字系统:0 1 2 3 4 5 6 7 8 9 罗马数字系统:I II III IV V VI VII…原创 2024-07-23 19:53:04 · 1108 阅读 · 0 评论 -
第二章 计算机算术
第二章 计算机算术原创 2024-07-13 20:35:22 · 1076 阅读 · 0 评论 -
第三章 计算机体系结构与组成
指令对数据进行操作,并且必须将数据移动到其被处理的地方。指定数据的方式统称为“寻址方式”。3种基本寻址方式立即数寻址直接寻址间接寻址最简单的寻址方式,其操作数是指令的一部分。如操作P= Q+5,这里的5就是立即数,它没有被保存在存储单元或寄存器中,而是指令的组成部分。ARM处理器使用**前缀#**指定立即操作数,如ADD r1,r2,#5完成了操作[r1]原创 2024-07-15 00:21:56 · 620 阅读 · 0 评论 -
第四章 指令集系统结构-广度和深度
或拷贝指令是计算机中最重要的,是执行最频繁的指令类型。原创 2024-07-16 00:10:15 · 658 阅读 · 0 评论 -
计算机科学导论 前言
本专栏所有文章均为笔者自己在阅读**《计算机科学导论》[美] 贝赫鲁兹·佛罗赞 ** 以及参考其他大佬的文章后的学习笔记及个人感悟,以此来记录自己的学习历程。原创 2024-07-23 22:20:59 · 122 阅读 · 0 评论 -
第一章 绪论
图灵机:什么是?Alan Turing(阿兰-图灵)1937年首次提出通用计算机:所有的计算都可能在一种特殊的机器上执行。原创 2024-07-22 23:11:07 · 748 阅读 · 0 评论 -
第三章 数据存储
数据类型包括:计算机中使用“”来定义包含数字、文本、音频、图像、视频的信息。原创 2024-07-23 21:31:23 · 1363 阅读 · 0 评论 -
第四章 数据运算
逻辑运算是指那些应用于一个二进制位,或在相应的两个二进制位的相同基本运算位层次上的逻辑运算模式层次上的逻辑运算模式层次上的逻辑运算是具有相同类型的位层次上的n个逻辑运算,这里的n就是模式中的位的数目。原创 2024-07-23 22:18:12 · 543 阅读 · 0 评论 -
第五章 计算机组成
计算机组成部件可以分为三大类(或子系统)原创 2024-07-23 23:55:18 · 623 阅读 · 0 评论 -
第六章 计算机网络和因特网
是一系列可用于通信的设备相互连接构成的主机(终端):如台式机、笔记本电脑、工作站、手机等连接设备:路由器:将一个网络与另一个网络相连交换机:将不同设备连接在一起调制调节器:可以改变数据形式局域网(LAN)通常是与单个办公室、建筑或校园内的几个主机相连的在一个局域网中,每台主机都有作为这台主机在局域网中定义的一个标识和一个地址一台主机向另一台主机发送的数据包中包括和的。原创 2024-07-24 13:55:23 · 1040 阅读 · 0 评论 -
第七章 操作系统
计算机系统由两个主要部分组成:硬件和软件定义:操作系统是计算机和(程序和人)的一个接口,它使得其他程序更加方便有效地运行,并能方便地对计算机硬件和软件资源进行访问操作系统的两个主要目标。原创 2024-07-24 14:39:12 · 762 阅读 · 0 评论 -
第八章 算法
算法是一组明确步骤的有序集合,它产生结果并在有限的时间内终止算法必须是一组**定义良好(最优算法)**且有序的指令集合递归的定义:每一个算法出现在它本身定义中,该算法就是递归的定义。原创 2024-07-24 17:32:07 · 1013 阅读 · 0 评论 -
第九章 程序设计语言
好的函数完成输入和输出。原创 2024-07-24 19:43:41 · 994 阅读 · 0 评论 -
第十章 软件工程
软件工程是建立在这样一个基础上,即的和原则来获得在真实机器上工作的。原创 2024-07-24 20:25:05 · 1489 阅读 · 0 评论 -
第十一章 数据结构
数组是元素的顺序集合,通常这些元素具有相同的数据类型索引表示元素在数组中的顺序号,顺序号从数组开始处计数数组元素通过索引被独立给出了地址,数组整体上有一个名称,但每个元素利用数组的的索引来单独访问。原创 2024-07-24 20:40:44 · 902 阅读 · 0 评论 -
第十二章 抽象数据类型
抽象数据类型(ADT,Abstract Data Type):定义数据类型和对数据的操作,包含了一组对数据操作的定义,而数据和操作的实现是隐藏的(封装)原创 2024-07-24 22:26:01 · 913 阅读 · 0 评论 -
第十六章 安全
在处理较长消息时,非对称秘钥密码系统效率低下,在数字签名系统中,消息通常较长,但我们不得不使用非对称秘钥模式,解决方案是。原创 2024-07-25 00:34:47 · 861 阅读 · 0 评论 -
第十三章 文件结构
文件存储在辅助存储设备或二级存储设备中,如磁盘和磁带等在设计一个文件时,关键问题是如何从文件中检索信息(一个特定的记录),有时需要一个接一个处理记录,有时需要快速存取特定数据。原创 2024-07-24 22:55:17 · 615 阅读 · 0 评论 -
第十四章 数据库
定义:数据库是一个组织内被应用程序使用的逻辑相一致的相关数据的集合。原创 2024-07-25 00:01:09 · 1139 阅读 · 0 评论 -
第十五章 数据压缩
数据压缩:通过部分消除数据中内在的来减少发送或存储的数据量压缩方法分为。原创 2024-07-25 00:10:30 · 322 阅读 · 0 评论 -
第十七章 计算理论
相对于计算机速度,我们关心的是程序总体的数量级而不是精确的数字,在该表示法中,运算数量表示为输入量的函数,如符号**O(n)**表示有n个输入,执行n次运算,符号O(n的2次方)表示有n个输入,执行n的2次方运算。:相对于计算机速度,我们关心的是程序总体的数量级而不是精确的数字,在该表示法中,运算数量表示为输入量的函数,如符号**O(n)**表示有n个输入,执行n次运算,符号O(n的2次方)表示有n个输入,执行n的2次方运算。在计算机科学理论中,一个无符号数能被分配给任何用特定语言编写的程序,通常称为。原创 2024-07-25 00:52:19 · 881 阅读 · 0 评论 -
深入理解计算机系统 前言
本专栏所有文章均为笔者自己在阅读**《深入理解计算机系统》[美] 兰德尔·布莱恩特/大卫·奥哈拉伦 ** 以及参考其他大佬的文章后的学习笔记及个人感悟,以此来记录自己的学习历程。衷心的建议每一位打算从事计算机相关行业的小伙伴,都可以抽出一些时间,好好的阅读一下本书。学习本书及本专栏文章:汇编语言、计算机科学导论、C语言等相关知识。原创 2024-07-29 19:35:50 · 136 阅读 · 0 评论 -
第二章 信息的表示和处理
布尔代数是在 0 和 1 基础上的定义可以把字节看作是一个长为 8 的位向量。位向量的一个应用是表示有限集合。如位向量 [0110 1001] 表示集合 A = {0,3,5,6}。下面是布尔代数运算补码使用了与无符号算术运算相同的位级实现,包括加法、减法、乘法甚至除法。都有完全一样或非常类似的位级行为。原创 2024-07-29 19:33:06 · 637 阅读 · 0 评论 -
第三章 程序的机器级表示
和整数运算操作不同,AVX浮点操作不能以立即数值作为操作数。相反,编译器必须为所有的常量值分配和初始化存储空间。然后代码把这些值从内存读入。和整数运算操作不同,AVX浮点操作不能以立即数值作为操作数。相反,编译器必须为所有的常量值分配和初始化存储空间。然后代码把这些值从内存读入。原创 2024-07-30 14:18:43 · 1392 阅读 · 0 评论 -
第四章 处理器体系结构
用AVX2为浮点数上的操作产生的机器代码风格类似于为整数上的操作产生的代码风格。它们都使用一组寄存器来保存和操作数据值,也都使用这些寄存器来传递函数参数。原创 2024-07-30 20:23:35 · 237 阅读 · 0 评论 -
第五章 优化程序性能
什么是内联替换?它的作用是什么?**“每元素的周期数”(CPE, Cycles Per Element)**是一个衡量计算性能的指标,用于评估在处理数据元素(如数组中的每个数)时,计算机花费了多少个处理器周期。通俗解释想象你在工厂流水线上工作,每个产品(元素)都需要通过你进行一些处理。CPE就好比是你处理每个产品所花费的时间。如果你每处理一个产品需要5秒,那么你的“每产品的时间”是5秒。同理,在计算机中,如果处理每个数据元素需要5个处理器周期,那么CPE就是5。为什么重要影响CPE的因素实际应用在性能调优和原创 2024-07-30 20:50:56 · 254 阅读 · 0 评论 -
第六章 存储器层次结构
多个具有不同容量、成本和访问时间的存储设备构成了,称为。原创 2024-07-30 22:37:30 · 384 阅读 · 0 评论 -
第七章 链接
编译器和汇编器会把每个全局符号区分为强或弱,并将之隐含地编码在可重定位文件地符号表里。强符号:函数和已初始化的全局变量弱符号:未初始化的全局变量规则1:不允许有多个同名的强符号规则2:如果一个全符号和多个弱符号同名,那么选择强符号规则3:如果有多个弱符号同名,任意选择其中一个vs 的链接器并未遵守规则2,规则3:如果定义了同名的全局变量,链接器会直接报错,不论是强符号还是弱符号。原创 2024-07-31 00:10:56 · 400 阅读 · 0 评论 -
第八章 异常控制流
和。原创 2024-07-31 01:04:41 · 351 阅读 · 0 评论 -
第九章 虚拟内存
虚拟内存提供了虚拟内存的。原创 2024-07-31 12:09:12 · 664 阅读 · 0 评论 -
第十章 系统级IO
输入/输出是在 Linux 系统中,C/C++ 等高级语言的 I/O 函数都是通过内核提供的系统及实现的。原创 2024-07-31 13:57:25 · 391 阅读 · 0 评论 -
第十一章 网络编程
以上 8 个步骤可以分为。原创 2024-07-31 14:36:13 · 373 阅读 · 0 评论 -
第十二章 并发编程
如果逻辑控制流在时间上重叠,那么就称它们是的。操作系统内核运行多个应用程序采用了并发机制,但并发不止用于内核,也用于应用程序中。使用应用级并发的应用程序称为。OS 提供了。原创 2024-07-31 15:09:37 · 343 阅读 · 0 评论 -
现代操作系统 前言
本专栏所有文章均为笔者自己在阅读**《现代操作系统》[荷] 安德鲁·塔嫩鲍姆** 以及参考其他大佬的文章后的学习笔记及个人感悟,以此来记录自己的学习历程。原创 2024-07-31 20:28:43 · 256 阅读 · 0 评论