当前位置: 首页 > news >正文

计算机基础书籍

一操作系统

二常见问题总结

1.操作系统的特征?
并发、共享、虚拟、异步性
2.进程阻塞与唤醒的条件

  1. 等待 I/O 操作完成
  2. 请求系统资源失败
  3. 等待信号量或事件
  4. 等待子进程结束
  5. 被高优先级进程抢占
    3.如何避免死锁?
    1、避免资源竞争
    2、破坏循环等待条件
    3、优先级机制
    4、资源预留机制
    4.什么是设备驱动程序
    用于控制和管理计算机系统中的硬件设备。设备驱动程序通常是与硬件设备紧密耦合的软件,它们实现了硬件设备与操作系统之间的接口,使得操作系统可以与硬件设备进行通信和控制。

二思维导图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

一编译

二常见问题总结

1.编译的过程?

  1. 词法分析(lexical analysis):将源代码分解为一个个单词(token),例如关键字、变量名、运算符等。
  2. 语法分析(syntax analysis):根据语法规则,将单词组成语法树(syntax tree),以确定源代码是否符合语法要求。
  3. 语义分析(semantic analysis):对语法树进行分析,检查语义错误,例如变量未定义、类型不匹配等。
  4. 中间代码生成(intermediate code generation):将源代码转换成中间代码(intermediate code),这种代码通常是一种类似汇编语言的低级语言。
  5. 优化(optimization):对中间代码进行优化,以提高程序的执行效率。
  6. 目标代码生成(code generation):将中间代码转换成目标代码(machine code),这种代码是计算机可以直接执行的二进制指令。
  7. 链接(linking):将目标代码和库文件(library)等组合成一个可执行程序。
    2.分析树有那几种
  8. 抽象语法树(AST):由语法分析器生成,表示源代码的语法结构。AST 只保留与语义有关的信息,丢弃掉不必要的细节,比如括号、分号等。AST 通常用于编译器的后续阶段,比如中间代码生成、代码优化等。
  9. 语法树(Parse Tree):是由语法分析器生成的一种树形结构,反映了源代码的语法结构和语法规则。语法树包含了所有的语法信息,包括括号、分号等。通常用于语法分析和语法错误的检测。
  10. 具体语法树(CST):与语法树相似,但包含了源代码中的所有符号和标点符号。通常用于词法分析,将输入的字符流转换成单词序列。
  11. 中间表示树(IR Tree):表示源代码的中间表示形式,通常用于编译器的中间代码生成阶段,是一种介于 AST 和机器代码之间的一种抽象形式。IR Tree 可以有多种实现方式,比如三地址码、四元式、虚拟机指令等。
    3.什么是算符优先文法
    算符优先文法是一种描述形式语言的文法,其文法的特点是文法的产生式中不含两个相邻的非终结符。
    4.LR分析器由什么组成
  12. LR分析表(LR parsing table):LR分析表是一个二维数组,其中行表示分析器的状态,列表示终结符和非终结符。LR分析表中的每个元素包含两个信息:一个是状态转移的目标状态,另一个是要执行的操作(移进或规约)。
  13. LR分析栈(LR parsing stack):LR分析栈是一个栈数据结构,用来保存当前的分析状态和已经处理的输入符号。
  14. 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.数值数据表示方式?

  1. 二进制补码表示法:在计算机中,数字都是使用二进制来表示的。二进制补码是一种表示负数的方法,它的基本思想是用最高位表示符号位,0表示正数,1表示负数,其他位表示数值大小。在补码表示法中,负数的补码是将该数的绝对值的二进制表示取反再加1。例如,十进制数-5的二进制补码为11111011。

  2. 浮点数表示法:浮点数表示法用于表示实数,包括小数和科学计数法表示的数值。浮点数通常由两个部分组成:尾数和指数。尾数表示数值的大小,指数表示数值的范围。计算机通常使用IEEE浮点数标准来表示浮点数,其中单精度浮点数使用32位表示,双精度浮点数使用64位表示。
    3. 什么是半导体存储器,常见的半导体有那些,有什么优点?
    半导体存储器是一种电子数字存储器,它由半导体材料制成,用于在计算机中存储数据。半导体存储器相对于传统的磁性存储器(如硬盘、软盘)来说,具有更快的读写速度、更低的能耗和更小的体积。
    常见的半导体存储器有:

  3. 随机存取存储器(RAM):可以随机读写数据,速度非常快,但是它的数据在电源关闭后就会消失,因此需要不断地进行刷新来保持数据的有效性。

  4. 只读存储器(ROM):用于存储不需要修改的固定数据,如计算机的BIOS程序和启动代码等。

  5. 闪存存储器(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事件注册 单个事件注册 语法&#xff1a; element.事件(function(){}) eg&#xff1a;$(“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即可。 点击确定后进行安装&#xff0c;安装完以后会提示安装JRE; 检测是否已经安装JDK的…...

KBO的选秀会有哪些规定和流程`棒球7号位

KBO&#xff08;韩国职业棒球联盟&#xff09;的选秀会有以下规定和流程&#xff1a; 1. 选秀对象&#xff1a;KBO的选秀会主要面向年满18岁及以上的高中和大学生&#xff0c;以及海外球员和自由球员。KBO的球队可以在选秀会中挑选所需的球员&#xff0c;每个球队有一定数量的选…...

男子订民宿被毁约5个家庭漂泊街头 房东:住满了,没办法

据媒体报道&#xff0c;5月1日&#xff0c;一位叫做诸先生的消费者和朋友们提前在平台上预订了五一假期前往青岛金沙滩地中海两天的别墅民宿&#xff0c;并支付了房款9600元。 但是当他们到达目的地前一个半小时联系房东时&#xff0c;却发现联系不上人。到达指定地点后&#x…...

Vue快速入门,常用指令,生命周期

Vue常用指令 案例&#xff1a; <!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 的基础上进行了封装&#xff0c;提供了更加便捷的开发方式&#xff0c;具有简化开发、提高效率等优点。以下是 MyBatis-Plus 的一些特点和用法&#xff1a; 通用 CRUD 操作&#xff1a;MyBatis-Plus 提供了通用的 CRUD 接口&#xff0c;可以直接调用…...

Node【Node.js 20】新特性

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

前端程序员的职业发展规划与路线——ChatGPT的回答

文章目录 一、前端程序员的职业规划是&#xff1f;回答1&#xff1a; 作为一个前端开发程序员&#xff0c;您的职业发展路线可能如下&#xff1a;回答2&#xff1a;作为前端开发程序员&#xff0c;您的职业发展路线可能如下&#xff1a;回答3&#xff1a; 你的职业发展路线可能…...

AlgoC++第八课:手写BP

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

【Java笔试强训 27】

&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔&#x1f93a;&#x1f93a;&#x1f93a; 目录 一、选择题 二、编程题 &#x1f525; 不用加…...

java紫砂壶交易购物系统 mysql

网络紫砂壶可充通过色彩、图片、说明、设置动画加强了产品了宣传&#xff0c;大大达到了陶瓷业的“色型”要求。实现产品管理方便&#xff0c;起到立竿见影的效果&#xff0c;不用因为更改菜色而重新印刷。只要在后台鼠标轻轻一点&#xff0c;全线马上更新。采用B/S模式&#x…...

7-4 多态练习-计算面积

定义三个类&#xff0c;父类(抽象类)GeometricObject代表几何形状&#xff0c;子类Circle代表圆形&#xff0c;子类Rectangle代表矩形。具体属性和方法如下&#xff1a; 父类 &#xff08;抽象类&#xff09;GeometricObject 属性&#xff1a; private String color; private S…...

很佩服的一个Google大佬,离职了。。

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

【Python习题集1】Python 语言基础知识

python习题 一、实验内容二、实验总结 一、实验内容 1、运用输入输出函数编写程序&#xff0c;将华氏温度转换成摄氏温度。换算公式&#xff1a;C(F-32)*5/9,其中C为摄氏温度&#xff0c;F为华氏温度。 &#xff08;1&#xff09;源代码&#xff1a; ffloat(input(输入华氏温…...

C语言进阶——数据在内存中的存储,你知道吗?

今天我们深度剖析数据在内存中的存储&#xff1a; 重点知识&#xff1a; 1、数据类型详细介绍 2、整形在内存中的存储&#xff1a;原码、反码、补码 3、大小端字节序介绍及判断 4、浮点型在内存中的存储解析 之前我们涉及关于这一部分的知识只是大致的进行讲解&#xff0…...

规则引擎----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…...

你手写过一把锁吗?你对轮询缓存怎么看?

当多个线程同时去操作一块内存的数据时如果不做一些限制&#xff0c;极其可能出现数据一致性问题。这时候&#xff0c;我们用一把锁锁住这块数据&#xff0c;持有钥匙者可以进入&#xff0c;不持有者等待钥匙用完再分配。所以在我看来啊&#xff0c;锁的本质就是一个标志位&…...

深入理解 spring-boot-starter-parent

目录 一、前言二、Maven继承三、分析spring-boot-starter-parent四、Maven单继承问题五、不继承spring-boot-starter-parent需要注意的 一、前言 在idea当中创建springboot项目的时候都会继承一个spring-boot-starter-parent作为父类&#xff0c;假如不继承我们的项目就不能使…...

基于SpringBoot的线上日志阅读器

软件特点 部署后能通过浏览器查看线上日志。支持Linux、Windows服务器。采用随机读取的方式&#xff0c;支持大文件的读取。支持实时打印新增的日志&#xff08;类终端&#xff09;。支持日志搜索。 使用手册 基本页面 配置路径 配置日志所在的目录&#xff0c;配置后按回车…...

【Leetcode -405.数字转换为十六进制数 - 409.最长回文串】

Leetcode Leetcode -405.数字转换为十六进制数Leetcode - 409.最长回文串 Leetcode -405.数字转换为十六进制数 题目&#xff1a;给定一个整数&#xff0c;编写一个算法将这个数转换为十六进制数。对于负整数&#xff0c;我们通常使用 补码运算 方法。 注意 : 十六进制中所有…...

剑指 Offer:003 前 n 个数字二进制中 1 的个数

题目&#xff1a; 给定一个非负整数 n&#xff0c;请计算 0 到 n 之间的每个数字的二进制表示中 1 的个数&#xff0c;并输出一个数组 示例&#xff1a; 1、 输入: n 2 输出: [0,1,1] 解释: 0 --> 0 1 --> 1 2 --> 10 2、 输入: n 5 输出: [0,1,1,2,1,2] 解释: 0 …...

DDD系列:二、应用架构设计演变

作用: ​ 通过规定一个固定的架构设计&#xff0c;可以让团队内有一个统一的开发规范&#xff0c;降低沟通成本&#xff0c;提升效率和代码质量。 目标&#xff1a; ​ 在做架构设计时&#xff0c;一个好的架构应该需要实现以下几个目标&#xff1a; 独立于UI&#xff1a;前…...

Spring-IOC

IOC概念和原理 什么是IOC 控制反转&#xff0c;为了将系统的耦合度降低&#xff0c;把对象的创建和对象直接的调用过程权限交给Spring进行管理。 IOC底层原理 XML解析 ​ 通过Java代码解析XML配置文件或者注解得到对应的类的全路径&#xff0c;获取对应的Class类 Class clazz …...

基于Java语言开发B/S架构实现的云HIS

一、云HIS系统框架简介 1、技术框架 &#xff08;1&#xff09;总体框架&#xff1a; SaaS应用&#xff0c;全浏览器访问 前后端分离&#xff0c;多服务协同 服务可拆分&#xff0c;功能易扩展 &#xff08;2&#xff09;技术细节&#xff1a; 前端&#xff1a;AngularNg…...

清洁赛道新势力,米博凭“减法”突围?

在五四青年节这个特殊的日子&#xff0c;方太旗下的高端智能清洁品牌“米博”发布了新一代无滚布洗地机7系列。 5月4日晚&#xff0c;米博以“减法生活&#xff0c;净请7代”为主题&#xff0c;举办了新品发布会。在发布会上&#xff0c;从小红书翻红的董洁作为方太集团米博产…...

代码随想录训练营Day6| 242、349、202、1

242. 有效的字母异位词 给定两个字符串 s 和 t &#xff0c;编写一个函数来判断 t 是否是 s 的字母异位词。 注意&#xff1a;若 s 和 t 中每个字符出现的次数都相同&#xff0c;则称 s 和 t 互为字母异位词。 class Solution {public boolean isAnagram(String s, String t)…...

IP-GUARD如何通过网络控制策略禁止应用程序联网?

如何通过网络控制策略禁止应用程序联网? 可以在控制台-高级-网络控制中,添加以下策略: 动作:“禁止” 应用程序:填写要禁止的程序(以QQ示例) 如何禁止没有安装客户端的电脑访问客户端电脑? 可以给所有客户端设置只允许客户端电脑访问的网络控制策略; 在控制台左边的…...