计算机基础书籍
一操作系统
二常见问题总结
1.操作系统的特征?
并发、共享、虚拟、异步性
2.进程阻塞与唤醒的条件
- 等待 I/O 操作完成
- 请求系统资源失败
- 等待信号量或事件
- 等待子进程结束
- 被高优先级进程抢占
3.如何避免死锁?
1、避免资源竞争
2、破坏循环等待条件
3、优先级机制
4、资源预留机制
4.什么是设备驱动程序
用于控制和管理计算机系统中的硬件设备。设备驱动程序通常是与硬件设备紧密耦合的软件,它们实现了硬件设备与操作系统之间的接口,使得操作系统可以与硬件设备进行通信和控制。
二思维导图
一编译
二常见问题总结
1.编译的过程?
- 词法分析(lexical analysis):将源代码分解为一个个单词(token),例如关键字、变量名、运算符等。
- 语法分析(syntax analysis):根据语法规则,将单词组成语法树(syntax tree),以确定源代码是否符合语法要求。
- 语义分析(semantic analysis):对语法树进行分析,检查语义错误,例如变量未定义、类型不匹配等。
- 中间代码生成(intermediate code generation):将源代码转换成中间代码(intermediate code),这种代码通常是一种类似汇编语言的低级语言。
- 优化(optimization):对中间代码进行优化,以提高程序的执行效率。
- 目标代码生成(code generation):将中间代码转换成目标代码(machine code),这种代码是计算机可以直接执行的二进制指令。
- 链接(linking):将目标代码和库文件(library)等组合成一个可执行程序。
2.分析树有那几种 - 抽象语法树(AST):由语法分析器生成,表示源代码的语法结构。AST 只保留与语义有关的信息,丢弃掉不必要的细节,比如括号、分号等。AST 通常用于编译器的后续阶段,比如中间代码生成、代码优化等。
- 语法树(Parse Tree):是由语法分析器生成的一种树形结构,反映了源代码的语法结构和语法规则。语法树包含了所有的语法信息,包括括号、分号等。通常用于语法分析和语法错误的检测。
- 具体语法树(CST):与语法树相似,但包含了源代码中的所有符号和标点符号。通常用于词法分析,将输入的字符流转换成单词序列。
- 中间表示树(IR Tree):表示源代码的中间表示形式,通常用于编译器的中间代码生成阶段,是一种介于 AST 和机器代码之间的一种抽象形式。IR Tree 可以有多种实现方式,比如三地址码、四元式、虚拟机指令等。
3.什么是算符优先文法
算符优先文法是一种描述形式语言的文法,其文法的特点是文法的产生式中不含两个相邻的非终结符。
4.LR分析器由什么组成 - LR分析表(LR parsing table):LR分析表是一个二维数组,其中行表示分析器的状态,列表示终结符和非终结符。LR分析表中的每个元素包含两个信息:一个是状态转移的目标状态,另一个是要执行的操作(移进或规约)。
- LR分析栈(LR parsing stack):LR分析栈是一个栈数据结构,用来保存当前的分析状态和已经处理的输入符号。
- LR分析动作(LR parsing action):LR分析动作是指对输入符号进行移进或规约的操作,当执行这些动作时,会根据当前状态和输入符号执行对应的操作,然后更新LR分析栈的状态。如果分析完成并且输入符号序列合法,则可以得到输入符号的语法结构。
5.给出该表达式的逆波兰表示(后缀式):a(-b+c)*
根据后续遍历:a(-b+c)–>(a *((-b)+c))–>a b - c + *
二思维导图
一计算机网络
二常见问题总结
1.报文交换和分组交换的优劣
报文交换和分组交换都是计算机网络中的数据传输方式,它们各有优劣。
报文交换的优点:
1.传输效率高:在传输大量数据时,报文交换比分组交换更加高效。
2.数据完整性:报文交换保证了数据的完整性,因为每个报文都在传输前进行了检查。
3.不需要缓存:报文交换不需要缓存,因为数据一次性发送。
报文交换的缺点:
1.延迟高:报文交换的延迟时间比分组交换更长。
2.传输质量差:由于网络环境的不稳定性,报文交换会导致数据的传输质量下降。
分组交换的优点:
1.传输效率高:分组交换可以同时传输多个分组,提高了传输效率。
2.数据灵活性:分组交换可以将大的数据包分割成小的分组,提高了数据的灵活性。
3.适应性强:分组交换可以适应不同的网络环境和不同的传输需求。
分组交换的缺点:
1.传输延迟高:分组交换需要对数据进行分割和重组,因此传输延迟比报文交换更高。
2.数据安全性差:分组交换中的分组可以被拦截或篡改,因此数据的安全性较差。
3.需要缓存:分组交换需要缓存,因为数据是分段传输。
2.什么是本地域名服务器
任何一台主机在网络地址配置时,都会配置一个域名服务器作为默认域名服务器,这个默认域名服务器通常称为本地域名服务器,是主机进行域名查询过程中首先被查询的域名服务器。
3.TCP如何实现拥塞控制
CP会为每条连接维护一个拥塞窗口来限制可能在端对端间传输的未确认分组总数量。这类似TCP流量控制机制中使用的滑动窗口。TCP在一个连接初始化或超时后使用一种“慢启动”机制来增加拥塞窗口的大小。它的起始值一般为最大分段大小Maximum segment size,MSS)的两倍,虽然名为“慢启动”,初始值也相当低,但其增长极快:当每个分段得到确认时,拥塞窗口会增加一个MSS,使得在每次往返时间(round-trip time,RTT)内拥塞窗口能高效地双倍增长。
当拥塞窗口超过慢启动阈值(ssthresh)时,算法就会进入一个名为“拥塞避免”的阶段。在拥塞避免阶段,只要未收到重复确认,拥塞窗口则在每次往返时间内线性增加一个MSS大小。
4.差错控制的作用?
差错控制在数字通信中利用编码方法对传输中产生的差错进行控制,以提高传输正确性和有效性的技术。通过发现数据传输中的错误,采取相应的措施减少数据传输错误。
5.网络安全典型威胁有哪些?
• 窃取机密信息。例如,通过物理搭线、接收辐射信号、信息流监视、会话劫持、冒名顶替、管理缺陷和后门等多种形式窃取机密信息。
• 非法访问。通过伪装、IP欺骗、越权操作、重演、盗用账号、破译口令等各种手段非法讹用或篡改网络信息。
• 恶意攻击。通过拒绝服务攻击、邮件炸弹和垃圾邮件、木马程序、篡改网页等破坏行为中断网络服务功能,或者破坏系统资源。
• 各种不同目的的黑客攻击。
• 计算机病毒。这是一种可以渗透到系统软硬件内部并能进行传播的有害程序。
• 散布和传播有害社会、有害个人、有害集体、有害国家的不良信息资源。
• 信息战。所谓信息战是指使用信息或信息系统的攻击和防御体系,以利用、恶化、摧毁对手的信息和信息系统为目的,同时保障自身信息和信息系统安全的信息对抗。
• 利用各种手段偷窃和破坏网络上的物理设备和基础设施。
二思维导图
一数据库原理
二常见问题
1.数据库系统三级模式、两层映像的含义是什么
数据库系统中的三级模式和两层映像是指数据库系统中的三级模式结构和数据在不同层次之间的映射关系。
三级模式指的是数据库系统中的三个层次:外模式、概念模式和内模式。外模式是用户能够看到和使用的部分,它是用户视图的集合。概念模式是数据库的全局逻辑结构,它描述了整个数据库的结构和约束条件。内模式是数据库的物理存储结构,它描述了数据在磁盘上的存储方式和数据存储的细节。
两层映像指的是外模式和概念模式之间的映像关系,以及概念模式和内模式之间的映像关系。外模式和概念模式之间的映像关系是指外模式中的数据如何映射到概念模式中的数据,概念模式和内模式之间的映像关系是指概念模式中的数据如何映射到内模式中的数据。
通过三级模式和两层映像的设计,数据库系统可以实现数据的逻辑独立性和物理独立性。逻辑独立性指的是数据库的概念模式可以独立于外模式和内模式进行修改,而不会影响到外模式和内模式的使用。物理独立性指的是数据库的内模式可以独立于概念模式和外模式进行修改,而不会影响到概念模式和外模式的使用。
2.一、二、三、BCNF这四种范式区别在哪
一、二、三、BCNF是数据库设计中的四种范式,它们分别代表了不同的规范化程度。下面是它们的区别:
1NF(第一范式):确保每个列都是原子性的,即每个列都只包含一个值。如果一个列中包含多个值,就需要将其拆分成多个列。
2NF(第二范式):在满足1NF的基础上,消除非主键列对主键的部分函数依赖。也就是说,每个非主键列都必须完全依赖于主键,而不能只依赖于主键的一部分。
3NF(第三范式):在满足2NF的基础上,消除非主键列对主键的传递依赖。也就是说,如果一个非主键列依赖于另一个非主键列,那么就需要将其拆分成两个表。
BCNF(巴斯-科德范式):在满足3NF的基础上,消除主键对非主键列的部分和传递依赖。也就是说,每个非主键列都必须完全依赖于主键,而不能只依赖于主键的一部分。如果存在这样的依赖关系,就需要将其拆分成两个表。
总的来说,一、二、三、BCNF都是为了减少数据冗余和提高数据的一致性和完整性。随着范式的逐渐提高,设计出来的数据库结构会越来越规范化,但也会越来越复杂,需要在设计时考虑到实际的业务需求和性能要求。
二思维导图
一计算机组成
二常见问题
1.计算机的结构?
计算机的结构可以按照功能划分为五个部分:运算器、控制器、存储器、输入设备和输出设备,这五个部分共同构成了计算机的基本结构。
2.数值数据表示方式?
-
二进制补码表示法:在计算机中,数字都是使用二进制来表示的。二进制补码是一种表示负数的方法,它的基本思想是用最高位表示符号位,0表示正数,1表示负数,其他位表示数值大小。在补码表示法中,负数的补码是将该数的绝对值的二进制表示取反再加1。例如,十进制数-5的二进制补码为11111011。
-
浮点数表示法:浮点数表示法用于表示实数,包括小数和科学计数法表示的数值。浮点数通常由两个部分组成:尾数和指数。尾数表示数值的大小,指数表示数值的范围。计算机通常使用IEEE浮点数标准来表示浮点数,其中单精度浮点数使用32位表示,双精度浮点数使用64位表示。
3. 什么是半导体存储器,常见的半导体有那些,有什么优点?
半导体存储器是一种电子数字存储器,它由半导体材料制成,用于在计算机中存储数据。半导体存储器相对于传统的磁性存储器(如硬盘、软盘)来说,具有更快的读写速度、更低的能耗和更小的体积。
常见的半导体存储器有: -
随机存取存储器(RAM):可以随机读写数据,速度非常快,但是它的数据在电源关闭后就会消失,因此需要不断地进行刷新来保持数据的有效性。
-
只读存储器(ROM):用于存储不需要修改的固定数据,如计算机的BIOS程序和启动代码等。
-
闪存存储器(Flash Memory):可以随机读写数据,与RAM类似,但它的数据可以在断电后保持不变,因此常用于存储操作系统、应用程序和用户数据等。
半导体存储器的优点是速度快、耗能低、可靠性高、体积小等,因此已经广泛应用于计算机、移动设备、数码相机等电子产品中。二思维导图
相关文章:

计算机基础书籍
一操作系统 二常见问题总结 1.操作系统的特征? 并发、共享、虚拟、异步性 2.进程阻塞与唤醒的条件 等待 I/O 操作完成请求系统资源失败等待信号量或事件等待子进程结束被高优先级进程抢占 3.如何避免死锁? 1、避免资源竞争 2、破坏循环等待条件 3、优…...

保龄球游戏的获胜者、找出叠涂元素----2023/4/30
保龄球游戏的获胜者----2023/4/30 给你两个下标从 0 开始的整数数组 player1 和 player2 ,分别表示玩家 1 和玩家 2 击中的瓶数。 保龄球比赛由 n 轮组成,每轮的瓶数恰好为 10 。 假设玩家在第 i 轮中击中 xi 个瓶子。玩家第 i 轮的价值为: …...
jQuery事件
1. jQuery事件注册 单个事件注册 语法: element.事件(function(){}) eg:$(“div”).click(function(){ 事件处理程序 }) 其他事件和原生基本一致。比如mouseover、mouseout、blur、focus、change、keydown、keyup、resize、scroll 等 <!DOCTYP…...

初识SpringCloud
一、软件架构演进 单体架构 垂直架构 分布式架构 SOA架构 微服务架构 二、微服务架构 2.1 微服务理念 "微服务”一词源 于 Martin Fowler的名为 Microservices的博文,可以在他的官方博客上找到http://martinfowler.com/articles/microservices.html微服务是系统架构上…...

安装java配置
目录 安装JDK 编辑 环境变量配置 3、检验环境变量配置 二、安装tomcat 验证Tomcat配置是否成功 三、安装Mysql 一、安装 二、卸载 四、安装Maven 安装JDK 点击更改将C直接给为F即可。 点击确定后进行安装,安装完以后会提示安装JRE; 检测是否已经安装JDK的…...
KBO的选秀会有哪些规定和流程`棒球7号位
KBO(韩国职业棒球联盟)的选秀会有以下规定和流程: 1. 选秀对象:KBO的选秀会主要面向年满18岁及以上的高中和大学生,以及海外球员和自由球员。KBO的球队可以在选秀会中挑选所需的球员,每个球队有一定数量的选…...
男子订民宿被毁约5个家庭漂泊街头 房东:住满了,没办法
据媒体报道,5月1日,一位叫做诸先生的消费者和朋友们提前在平台上预订了五一假期前往青岛金沙滩地中海两天的别墅民宿,并支付了房款9600元。 但是当他们到达目的地前一个半小时联系房东时,却发现联系不上人。到达指定地点后&#x…...

Vue快速入门,常用指令,生命周期
Vue常用指令 案例: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"…...
【热门框架】Mybatis-Plus入门介绍看这一篇文章就足够了
MyBatis-Plus 是在 MyBatis 的基础上进行了封装,提供了更加便捷的开发方式,具有简化开发、提高效率等优点。以下是 MyBatis-Plus 的一些特点和用法: 通用 CRUD 操作:MyBatis-Plus 提供了通用的 CRUD 接口,可以直接调用…...

Node【Node.js 20】新特性
文章目录 🌟前言🌟Node.js 20: 一次重要的升级和改进🌟Internationalization API Update🌟端口管理器🌟字符串处理🌟 更好的调试工具🌟 Crypto模块的更新🌟总结🌟写在最后…...

前端程序员的职业发展规划与路线——ChatGPT的回答
文章目录 一、前端程序员的职业规划是?回答1: 作为一个前端开发程序员,您的职业发展路线可能如下:回答2:作为前端开发程序员,您的职业发展路线可能如下:回答3: 你的职业发展路线可能…...

AlgoC++第八课:手写BP
目录 手写BP前言1. 数据加载2. 前向传播3. 反向传播总结 手写BP 前言 手写AI推出的全新面向AI算法的C课程 Algo C,链接。记录下个人学习笔记,仅供自己参考。 本次课程主要是手写 BP 代码 课程大纲可看下面的思维导图 1. 数据加载 我们首先来实现下MNIST…...

【Java笔试强训 27】
🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 一、选择题 二、编程题 🔥 不用加…...

java紫砂壶交易购物系统 mysql
网络紫砂壶可充通过色彩、图片、说明、设置动画加强了产品了宣传,大大达到了陶瓷业的“色型”要求。实现产品管理方便,起到立竿见影的效果,不用因为更改菜色而重新印刷。只要在后台鼠标轻轻一点,全线马上更新。采用B/S模式&#x…...
7-4 多态练习-计算面积
定义三个类,父类(抽象类)GeometricObject代表几何形状,子类Circle代表圆形,子类Rectangle代表矩形。具体属性和方法如下: 父类 (抽象类)GeometricObject 属性: private String color; private S…...

很佩服的一个Google大佬,离职了。。
这两天,科技圈又有一个突发的爆款新闻相信不少同学都已经看到了。 那就是75岁的计算机科学家Geoffrey Hinton从谷歌离职了,从而引起了科技界的广泛关注和讨论。 而Hinton自己也证实了这一消息。 提到Geoffrey Hinton这个名字,对于一些了解过…...

【Python习题集1】Python 语言基础知识
python习题 一、实验内容二、实验总结 一、实验内容 1、运用输入输出函数编写程序,将华氏温度转换成摄氏温度。换算公式:C(F-32)*5/9,其中C为摄氏温度,F为华氏温度。 (1)源代码: ffloat(input(输入华氏温…...

C语言进阶——数据在内存中的存储,你知道吗?
今天我们深度剖析数据在内存中的存储: 重点知识: 1、数据类型详细介绍 2、整形在内存中的存储:原码、反码、补码 3、大小端字节序介绍及判断 4、浮点型在内存中的存储解析 之前我们涉及关于这一部分的知识只是大致的进行讲解࿰…...
规则引擎----easy rules
一、规则引擎的作用 将复杂的if else判断剥离出来 二、使用 2.1、引入POM <!--easy rules核心库--><dependency><groupId>org.jeasy</groupId><artifactId>easy-rules-core</artifactId><version>3.3.0</version></depe…...
你手写过一把锁吗?你对轮询缓存怎么看?
当多个线程同时去操作一块内存的数据时如果不做一些限制,极其可能出现数据一致性问题。这时候,我们用一把锁锁住这块数据,持有钥匙者可以进入,不持有者等待钥匙用完再分配。所以在我看来啊,锁的本质就是一个标志位&…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...

UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
Java数值运算常见陷阱与规避方法
整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?
在工业自动化持续演进的今天,通信网络的角色正变得愈发关键。 2025年6月6日,为期三天的华南国际工业博览会在深圳国际会展中心(宝安)圆满落幕。作为国内工业通信领域的技术型企业,光路科技(Fiberroad&…...