java零基础入门pdf_java零基础入门pdf

java零基础入门pdf_java零基础入门pdf本章节从计算机简介、组成、执行过程、性能指标四个方面进行论述

目录

一、计算机组成概述

1.计算机系统简介

1.1、早期的冯·诺依曼机

1.2、现代计算机组结构

2、计算机的组成

2.1、存储器

2.2运算器

2.3控制器

3、计算机的执行过程

4、计算机的性能指标

二、系统总线

1、总线的结构

2、总线的分类

三、存储器

1、存储器的分类

2、存储器的层次结构

3、主存储器

4、高速缓冲存储器

4.1、缓存的工作原理

4.2、缓存与主存的地址映射

四、CPU的结构和功能

1、CPU的功能

2、CPU的结构图

3、CPU的寄存器

3.1、用户可见寄存器

3.2、用户不可见寄存器

3.3、用户控制和状态寄存器

4、CPU的控单元

五、指令周期

1、指令周期的数据流


一、计算机组成概述

 本章节从计算机简介、组成、执行过程、性能指标四个方面进行论述。 

1.计算机系统简介

计算机系统软硬件

硬件:计算机的实体,如主机、外设等。

软件:由具有各类特殊功能的信息(程序组成),可分为两类:系统软件、应用软件。

计算机系统层次结构

java零基础入门pdf_java零基础入门pdf

1.1、早期的冯·诺依曼机

他提出程序存储思想,根据这一原理制造的计算机被称为冯·诺依曼结构计算机

**程序存储:**指令以代码的形式事先输入到计算机的主存储器中,然后按其在存储器中的首地址执行程序的第一条指令,以后就按该程序的规定顺序执行其他指令,直至程序执行结束。即按地址访问并顺序执行指令

五大特点:

  1. 计算机硬件系统由五大部件组成(存储器、运算器、控制器、输出设备、输入设备)
  2. 指令和数据以同等地位存于存储器,可按地址寻访
  3. 指令和数据用二进制表示
  4. 指令由操作码和地址码组成
  5. 存储程序

以运算器为中心,且是单处理机,基本工作方式是控制流驱动方式

在这里插入图片描述

1.2、现代计算机组结构

在这里插入图片描述

2、计算机的组成

计算机有五大部分组成:

<1> 输入设备,是指将外部信息以计算机能读懂的方式输入进来,如键盘,鼠标等

<2> 输出设备,就是将计算机处理的信息以人所能接受的方式输出出来,比如显示屏,打印

机。

<3> 存储器,存储器分为 主存储器(内存储器,CPU能直接访问)和 辅助存储器(外存储器,协助主存储器记忆更多的信息,辅助存储器的信息需要导入到主存储器中,才可以被CPU访问)。

<4> 运算器,是计算机的运算单元,用于算术运算和逻辑运算,运算器的核心单元是算术逻辑单元(ALU)。

<5> 控制器,控制器是计算机的指挥中心,有其指挥各部件自动协调第进行工作,现代计算机将运算器和控制器集成到一个芯片上,合成为中央处理器,简称CPU。有程序计数器(PC)、指令寄存器(IR)和控制单元(CU)。

java零基础入门pdf_java零基础入门pdf

2.1、存储器

 **主存储器**是由**地址寄存器(MAR)**,**数据寄存器(MDR)**,**存储体**,**时序控制逻辑**组成。 
 地址寄存器存放访存地址,经过地址译码后找到所选的存储单元。 数据寄存器,是存储器与其他部件的中介,用于暂存要从存储器读或写的信息。 时序控制逻辑用于产生存储器操作所需的各种时序信号。 
 **主存储器**的工作方式是按存储单元的地址进行存取,这种存取方式称为按地址存取方式(**相联存储器**既可以既可以按照**地址寻址**,又可以按照**内容寻址**,为了与传统存储器区别,又称为**内容寻址的存储器**!) 

java零基础入门pdf_java零基础入门pdf

2.2、运算器

java零基础入门pdf_java零基础入门pdf

2.3控制器

 有程序计数器(PC)、指令寄存器(IR)和控制单元(CU)。 

java零基础入门pdf_java零基础入门pdf

3、计算机的执行过程

 一般将运算器和控制器集成到同一个芯片上,称为中央处理器(CPU)。CPU和主存储器共同构成**主机**。CPU和主存之间通过一组总线相连,总线中有地址、控制和数据3组信号线。MAR中的地址信息会直接送到地址线上,用于指向读/写操作的主存存储单元;控制线中有读/写信号线,指出数据是从CPU写入主存还是从主存读出到CPU,根据是读操作还是写操作来控制将MDR中的数据是直接送到数据线上还是将数据线上的数据接收到MDR中。 

java零基础入门pdf_java零基础入门pdf

演示计算机执行乘操作的执行过程

IR存放当下欲执行的指令;PC存放下一条指令的地址;

MAR存放欲访问的存储单元地址;MDR存放从存储单元取来的数据!

地址译码器是主存的构成部分,不属于CPU;地址寄存器虽然一般属于主存,但是现代计算机中绝大多数CPU内集成了地址寄存器!

关于CPU存取速度的比较:寄存器(CPU内部)> Cache(高速的SRAM) > 内存 (SDRAM)

取数

java零基础入门pdf_java零基础入门pdf

运算java零基础入门pdf_java零基础入门pdf

存数

java零基础入门pdf_java零基础入门pdf

停机

java零基础入门pdf_java零基础入门pdf

4、计算机的性能指标

java零基础入门pdf_java零基础入门pdf

二、系统总线

  • 总线是连接各个部件的信息传输线,是各个部件共享的传输介质。
  • 总线上信息的传送的两种方式:串行并行

1、总线的结构

有单总线、双总线、三总线和四总线等。

单总线:

java零基础入门pdf_java零基础入门pdf

双总线以CPU为核心:

java零基础入门pdf_java零基础入门pdf

双总线以寄存器为核心:

java零基础入门pdf_java零基础入门pdf

三总线的两种结构:

java零基础入门pdf_java零基础入门pdf

java零基础入门pdf_java零基础入门pdf

四总线结构:

java零基础入门pdf_java零基础入门pdf

2、总线的分类

  • 片内总线:芯片内部的总线
  • 系统总线:计算机各部件之间的信息传输线
    • 数据总线:双向 与机器字长、存储字长有关
    • 地址总线:单向 与存储地址、I/O地址有关,由CPU发出
    • 控制总线:有出 有入,存储器读、存储器写、总线允许、中断确认
  • 通信总线
    • 用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信等)之间的通信
    • 传输方式:串行通信总线、并行通信总线。

三、存储器

1、存储器的分类

  • 按存储器介质份分类
    • 半导体存储器(TTL(集成度低、功耗高、速度快)、MOS(功耗低,集成度高))。U盘等;易失
    • 磁表面存储器(磁头、载磁体)。如磁盘、磁带等;非易失
    • 磁芯存储器(硬磁材料、环状元件);非易失
    • 光盘存储器(激光、磁光材料);非易失
  • 按存取方式分类
    • 存取时间与物理地址无关(随机访问)
      • 随机存储器 在程序的执行过程中可读可写
      • 只读存储器 在程序的执行过程中只读
    • 存取时间与物理地址有关(串行访问)
      • 顺序存取存储器 磁带
      • 直接存取存储器 磁盘
  • 在计算机中的作用分类
    • 主存储器
    • RAM(可读可写);静态RAM、动态RAM
    • ROM(只读);MROM、PROM、EPROM、EEPROM
    • 辅助存储器 磁盘、磁带、光盘
    • Flash Memory
    • 高速缓冲存储器(Cache)

2、存储器的层次结构

  • 存储器三个主要特性:速度 容量 价格/位

java零基础入门pdf_java零基础入门pdf

缓存用来解决主存与CPU速度差距太大的问题,辅存用来解决主存容量问题

java零基础入门pdf_java零基础入门pdf

3、主存储器

  • 主存的基本组成

java零基础入门pdf_java零基础入门pdf

  • 主存与CPU的联系

java零基础入门pdf_java零基础入门pdf

  • 分类
    * 随机存储器 RAM(可读可写);静态RAM、动态RAM
    * 只读存储器 ROM;MROM、PROM、EPROM、EEPROM
  • 提高访存速度的措施
    * 采用高速器件
    * 采用层次结构 Cache-主存
    * 调整主存结构

4、高速缓冲存储器

为了避免CPU出现空等现象,用在CPU与主存之间。

4.1、缓存的工作原理

java零基础入门pdf_java零基础入门pdf

 主存和缓存中都有字块,通过字块号主存与缓存想和关联,关联的字块中存放相同数据。CPU想读写主存某字块时,实际去读写缓存中与之对应的字块。缓存的结构如下图: 

java零基础入门pdf_java零基础入门pdf

  • 读操作过程:

java零基础入门pdf_java零基础入门pdf

  • 写操作过程: CPU直接写到缓存中,关键点在于保证缓存与主存的一致性。
    • 写直达法:
      • 写操作时数据既写入cache又写入主存
      • 写操作时间就是访问主存的时间,Cache块退出时,不需要对主存执行写操作,更新策略比较容易实现
    • 写回法(Write-back)
      * 写操作时只把数据写入Cache而不写入主存,当Cache数据被替换出去时才写回主存
      * 写操作时间就是访问Cache的时间,Cache块退出时,被替换的块需写回主存增加了Cache的复杂性
  • 缓存的改机
    • 增加Cache的级数,片载(片内)Cache,现在系统中基本都是三级缓存。
    • 统一缓存和分立缓存,指令Cache 数据Cache,与指令执行的控制方式有关(是否是流水线)。

4.2、缓存与主存的地址映射

  • 直接映射(离CPU近就采用这种方式)某一主存块只能固定映射到某一缓存块 不灵活、速度快

java零基础入门pdf_java零基础入门pdf

  • 全相连映射 某一主存块能映射到任一缓存块 成本高、速度低

java零基础入门pdf_java零基础入门pdf

  • 组相连映射 速度快、cache的命中率高

java零基础入门pdf_java零基础入门pdf

  • Cache中主存块的替换算法
    • 随机算法(RAND):随机地确定替换的 Cache块。它的实现比较简单,但没有依据程序访问的局部性原理,故可能命中率较低
    • 先进先出算法(FIFO):选择最早调入的行进行替换。它比较容易实现,但也没有依据程序访问的局部性原理,可能会把一些需要经常使用的程序块(如循环程序)也作为最早进入 Cache的块替换掉。
    • 近期最少使用算法(LRU):依据程序访问的局部性原理选择近期内长久未访问过的存储行作为替换的行,平均命中率要比FFO要高,是堆栈类算法。
    • LRU算法对每行设置一个计数器, Cache每命中一次,命中行计数器清0,而其他各行计数器均加1,需要替换时比较各特定行的计数值,将计数值最大的行换出。
    • 最不经常使用算法(LFU):将一段时间内被访问次数最少的存储行换出。每行也设置一个计数器,新行建立后从0开始计数,每访问一次,被访问的行计数器加1,需要替换时比较各特定行的计数值,将计数值最小的行换出。

四、CPU的结构和功能

java零基础入门pdf_java零基础入门pdf

1、CPU的功能

(1)取指令(PC保存下一条指令的存放地址,IR存放当前指令)
  控制器必须具备能自动地从存储器中取出指令的功能

(2)分析指令(CU负责分析指令)
  分析指令包括两部分内容:其一,分析此指令要完成什么操作,即控制器需发出什么操作命令;其二,分析参与这次操作的操作数地址,即操作数的有效地址。

(3)执行指令(ALU负责执行运算)
  执行指令就是根据分析指令产生的“操作命令”和“操作数地址”的要求,形成操作控制信号序列,通过对运算器、存储器以及I/O设备的操作,执行每条指令。

(4)控制程序 (CU也是控制单元)

 CPU必须具有控制程序的顺序执行(称**指令控制**)、产生完成每条指令的控制命令(称**操作控制**)、对各种操作加以时间上的控制(称**时间控制**)。 

(5)数据加工(ALU 数据逻辑运算)

 对数据进行算术运算和逻辑运算(称**数据加工**)。 

(6)中断处理

 处理异常情况和特殊请求 

2、CPU的结构图

java零基础入门pdf_java零基础入门pdf

java零基础入门pdf_java零基础入门pdf

3、CPU的寄存器

3.1、用户可见寄存器

  • 通用寄存器组(RO~R3)
    • 存放操作数可作某种寻址方式所需的专用寄存器
  • 数据寄存器(DR)
    • 存放操作数(满足各种数据类型)两个寄存器拼接存放双倍字长数据
  • 地址寄存器(AR)
    • 存放地址,其位数应满足最大的地址范围用于特殊的寻址方式段基值栈指针
  • 条件码寄存器
    • 存放条件码,可作程序分支的依据
  • 指令计数器(PC)
    • 放现行指令的地址,通常具有计数功能。当遇到转移类指令时,PC的值可被修改。
  • 程序状态字寄存器(PSW)
    • 存放条件码和其他状态信息。

3.2、用户不可见寄存器

  • 存储器地址寄存器(MAR)
    • 用于存放将被访问的存储单元的地址。
  • 存储器数据寄存器(MDR)
    • 用于存放欲存入存储器中的数据或最近从存储器中读出的数据。
  • 指令寄存器(IR)
    • 存放当前欲执行的指令。

3.3、用户控制和状态寄存器

  • 控制寄存器 控制CPU操作

     P C → M A R → M → M D R → I R 
  • 状态寄存器

     状态寄存器 存放条件码 PSW 寄存器 存放状态字 

4、CPU的控单元

控制单元(CU)是提供完成计算机全部指令操作的微操作命令序列部件。微操作命令序列的形成方法有两种:一种是组合逻辑设计方法,为硬连线逻辑;另一种是微程序设计方法,为存储逻辑

五、指令周期

CPU访存的四种性质

  • 指令 取指周期
  • 地址 间址周期
  • 操作数 执行周期
  • 程序断点 中断周期

指令周期概念

 CPU每取出并执行一条指令所需的全部时间称为**指令周期**,也即CPU完成一条指令的时间。取指阶段完成取指令和分析指令的操作,又称**取指周期**;执行阶段完成执行指令的操作,又称**执行周期**。 

java零基础入门pdf_java零基础入门pdf

间接寻址的指令周期就包括取指周期、间址周期、**执行周期**3个阶段,

java零基础入门pdf_java零基础入门pdf

带有中断周期的指令周期,会检查是是否中断

java零基础入门pdf_java零基础入门pdf

指令周期流程

java零基础入门pdf_java零基础入门pdf

1、指令周期的数据流

 **(1) 取指周期的数据流** 

java零基础入门pdf_java零基础入门pdf

 **(2) 间址周期的数据流** 

java零基础入门pdf_java零基础入门pdf

(3) 执行周期的数据流

不同指令的执行周期数据流不同

(4) 中断周期的数据流

java零基础入门pdf_java零基础入门pdf
题外话

初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:

  • 2023届全国高校毕业生预计达到1158万人,就业形势严峻;

  • 国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。

    一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。

6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。

2022届大学毕业生月收入较高的前10个专业

本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。

具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。

java零基础入门pdf_java零基础入门pdf

“没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。

网络安全行业特点

1、就业薪资非常高,涨薪快 2021年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!

java零基础入门pdf_java零基础入门pdf

2、人才缺口大,就业机会多

2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。

java零基础入门pdf_java零基础入门pdf

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

`黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

java零基础入门pdf_java零基础入门pdf

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

java零基础入门pdf_java零基础入门pdf

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

java零基础入门pdf_java零基础入门pdf

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

java零基础入门pdf_java零基础入门pdf

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

今天的文章
java零基础入门pdf_java零基础入门pdf分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/81294.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注