计算机组成原理知识体系

  • 一、计算机系统概述
    • (一)组成部分
    • (二)冯·诺依曼结构
    • (三)计算机发展时间节点
    • (四)典型计算机的硬件组成
    • (五)三种程序
  • 二、计算机性能评价
    • (一)评价指标
    • (二)部分数值计算
  • 三、数据的机器级表示
    • (一)数值数据表示
    • (二)非数值数据表示
    • (三)数据的宽度、存储排列、纠/检错
  • 四、运算方法及部件
    • (一)高级语言和机器指令中的运算
    • (二)ALU(划重点)
    • (三) 定点数运算及其运算部件
    • (四) 浮点数运算及其运算部件
  • 五、指令系统
    • 指令
    • (二)指令类型和格式
    • (三)数据类型
    • (四)操作数的寻址方式
    • (五)操作码的编码
    • (六)指令系统
  • 六、CPU
    • (一)单周期数据通路的设计
    • (二)单周期控制器的设计
    • (三)微程序控制器设计与异常处理
    • (四)多周期处理器

一、计算机系统概述

(一)组成部分

1.计算机硬件:CPU + MM + I/O

1)中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。
2)MM是计算机硬件中的主存储器,即Main Memory。
3)I/O输入/输出(Input/Output),分为IO设备和IO接口两个部分。

2.计算机软件:系统软件+应用软件

(二)冯·诺依曼结构

1.计算机有运算器、控制器、存储器、输入和输出设备。
2. 各基本部件的功能是:
存储器存放数据和指令,形式上两者没有区别,但计算机应
能区分数据还是指令;
控制器应能自动执行指令;
运算器应能进行加/减/乘/除四种算术运算和一些逻辑运算;
操作人员通过输入、输出设备和主机进行通信。
3. 内部以二进制表示指令和数据。每条指令由操作码和地址码两
部分组成。操作码指出操作类型,地址码指出操作数的地址。
由一串指令组成程序。
4. 采用“存储程序”工作方式。 将事先编好的程序和原始数据送
入主存中,然后启动执行。计算机能自动完成逐条取出指令和
执行指令的任务。

(三)计算机发展时间节点

第一代:真空管(电子管Vacuum Tube )1946~57年
第二代:晶体管 1958~64年
第三代:SSI/MSI 1965~71年
第四代:LSI/VLSI/ULSI 1972~至今

(四)典型计算机的硬件组成


(五)三种程序

汇编程序(Assembler):汇编语言源程序→机器目标程序
编译程序(Complier):高级语言源程序→汇编/机器目标程序
解释程序(Interpreter ):将高级语言语句逐条翻译成机器指令并立即执行,不生成目标文件。

二、计算机性能评价

(一)评价指标

两大分类
Tasks per day, hour, sec, ns…
– 吞吐率(throughput)
– 带宽(bandwidth )
Time to do the task
– 响应时间(response time)
– 执行时间、等待时间(execution time, latency)

各项指标

1.CPU执行时间:执行程序中每条指令的时间。
意义:
一般不考虑主存磁盘输入输出开销,只考虑CPU的执行时间。
比较计算机的性能时,多用CPU执行时间来衡量。

2.CPU时间:指CPU花在程序执行上的时间。
包括2部分:
用户CPU时间:运行用户代码的时间。
系统CPU时间:为了执行用户程序而需要运行操作系统程序的时间。

3.CPI (Cycles Per Instruction):
CPI = 时钟周期数 /指令 (每条指令单周期或多周期)
意义:
CPI 用来衡量以下各方面的综合结果:
指令集、程序、计算机系统的设计

其他指标
1.MIPS
Million Instructions Per Second (定点指令执行速度)

2.MFLOPS
Million Floating-point Operations Per Second(浮点操作速度)

3.性能评价基准程序(Benchmarks)
• 基准测试程序是专门用来进行性能评价的一组程序
• 基准程序通过运行实际负载来反映计算机的性能
• 最好的基准程序是用户实际使用的程序或典型的简单程序

(二)部分数值计算

计算式
CPI = (CPU 时间×时钟频率) / 指令条数 = 总时钟周期数 / 指令条数
CPU 执行时间 = CPU时钟周期数 × 时钟周期
= CPU时钟周期数 / 时钟频率
= 指令条数 × CPI × 时钟周期

三、数据的机器级表示

(一)数值数据表示

数值数据:无符号整数、带符号整数、浮点数(实数)、十进制数
数值数据表示三要素:进位计数制(进制),定点浮点表示,编码规则

定点数的表示

• 进位计数制
二、八、十六、十

• 定点数的二进制编码
原码

补码
假定补码有n位,则X的补码为:
定点整数:[X]补= 2n + X (-2n≤X< 2n,mod 2n);
定点小数:[X]补= 2 + X (-1≤X<1,mod 2);

一个负数的补码等于模减去该负数的绝对值。

便捷计算:
正数:符号位为0,数值部分不变
负数:符号位为1,数值部分“各位取反,末位加1”

反码
正数的反码与原码相同
负数的反码符号不变,数值位取反

移码
定义:将每一个补码数值加上一个偏置常数得到移码 。
作用:主要用来表示浮点数阶码。
• 定点整数的表示

  • 无符号整数、带符号整数

浮点数的规格化
 IEEE754浮点数标准

非规格化参照表格

浮点数计算注意问题
很大的数与很小的数进行运算时,小的数将会被抹掉。
(原因,浮点数计算第一步,阶码计算时,小数移位运算,全部变成0了)

十进制数表示
用ASCII码或BCD码表示。

(二)非数值数据表示

非数值数据:逻辑数(包括位串)、西文字符和汉字
逻辑数据
用一位表示 。
逻辑数据和数值数据在形式上并无差别,也是一串0/1序列,机器靠指令来别。

西文字符
拼音文字,用有限几个字母可拼写出所有单词;
只对有限个字母和数学符号、标点符号等辅助字符编码;
所有字符总数不超过256个,使用7(或8)个二进位可表示;
常用编码为ASCII码。

汉字
有以下几种汉字代码:
输入码:对汉字用按键进行编码,用于输入;

内码:用于在系统内存储、查找、传送等处理;

变化过程:
码表区位码(加20H)—> GB2312国标码(高位变1)—>内码

解释:
码表由94行、94列组成,行号为区号,列号为位号,各占7位;
区号和位号各自加上32(20H),得到其“国标码”;
国标码中区号和位号各占7位,前面添一个0,构成一个字节;
为与ASCII码区别,将国标码的两个字节的第一位置“1”得到汉字内码。

字模点阵或轮廓描述: 描述汉字点阵或轮廓,用于显示/打印。

(三)数据的宽度、存储排列、纠/检错

比特(bit)是计算机中处理、存储、传输信息的最小单位;
字节(Byte),也称“位组”。
存储器按字节编址;
字节是最小可寻址单位 (addressable unit )。
字长:定点运算数据通路的宽度。
字长等于CPU内部总线的宽度、运算器的位数、通用寄存器的宽度等。
字用来度量数据类型的宽度。

储存
ISA设计时要考虑的两个问题:
• 大小端问题
大端方式: MSB的地址是数的地址;
大端方式: MSB的地址是数的地址。
• 字的边界对齐问题
按边界对齐 (假定字的宽度为32位,按字节编址)

  • 字地址:4的倍数(低两位为0)
  • 半字地址:2的倍数(低位为0)
  • 字节地址:任意
    不按边界对齐
    好处:节约空间;
    坏处:可能会增加访存次数。

纠错、检错
元器件故障或噪音会使数据出现差错。
措施:
(1) 通过电路、布线等方面提高的抗干扰能力;
(2) 进行数据检错和校正,发现并纠正错误。

例如:
增大码距可提高检错纠错能力。

码距:
若干位代码组成的一个字叫码字(数据校验中“码字”指数据位和校验位排列得到的代码)
两个码字中不同位的个数叫它们的距离;
码制中所有码字间最小距离为码距,即码制的距离。

常用的数据校验码有:
奇偶校验码、海明校验码、循环冗余校验码。
• 奇偶校验:适应于一字节长数据的校验,如内存
• 海明校验:各组内用奇偶校验,用于内存储器数据的校验
• 循环冗余校验:用在通信和外存中,适合于大批量数据校验

四、运算方法及部件

(一)高级语言和机器指令中的运算

算术运算
整数算术运算、浮点数算术运算
按位运算
用途:
对位串实现“掩码”(mask)操作或相应的其他处理
逻辑运算
与、或、非
与按位运算的差别

  • 符号表示不同:& - && …
  • 运算过程不同:按位 - 整体
  • 结果类型不同:位串 - 逻辑值
    移位运算
    • 用途
  • 提取部分信息
  • 扩大或缩小数值的2、4、8…倍
    • 操作
  • 左移:x<<k; 右移: x>>k
  • 由x的类型决定移位的类型
  • 无符号数:逻辑移位(逻辑移位:空位补0;)
  • 带符号整数:算术移位(算术左移:低位补0;算术右移: 高位补符号。)
    右移:低位移出,高位补符号,可能发生有效数据丢失。
    位扩展和位截断运算
    • 用途
  • 类型转换时可能需要数据扩展或截断
    • 操作
  • 无专门运算符,由类型转换前后数据长短确定是扩展还是截断
  • 扩展:短转长
    无符号数:0扩展,前面补0
    带符号整数:符号扩展,前面补符
  • 截断:长转短
    强行将高位丢弃,故可能发生“溢出”

实现MIPS定点和浮点运算指令的思路
先实现一个能进行基本算术运算(加/减)和基本逻辑运算的ALU;
再由ALU和移位器实现乘、除、浮点运算器。

(二)ALU(划重点)

话不多说,先上图:

算术逻辑单元(arithmetic and logic unit),简称ALU。
ALU可进行加/减算术运算和逻辑运算。其核心部件是加法器。

加法器
半加器;
全加器;
串行进位加法器;
并行进位加法器。

超前进位加法器(Carry Look-Ahead),简称CLA加法器。
CLA加法器由进位生成/传递部件、CLA部件和 求和部件 构成。
实现Si=Pi⊕Ci的电路称为求和部件

局部(单级)CLA加法器

带标志加法器
加法器需要增加逻辑门生成标志信息。
溢出标志OF= Cn⊕Cn-1
符号标志SF=Fn-1
零标志ZF
进位借位标志CF=Cout ⊕ Cin

ALU的核心部件是带标志位加法器。
A、B为n位输入端。ALUop操作控制端。下图中可进行与、或、加运算。

(三) 定点数运算及其运算部件

无符号数的按位逻辑运算可用逻辑门实现;
逻辑移位可用移位器实现;
带符号数的算术移位、无符号和带符号数的位扩展和截断也可用简单电路实现。

加减公式
[A+B]补 = [A]补 + [B]补 ( mod 2n )
[A–B]补 = [A]补 + [–B]补 ( mod 2n )

[–B]补=[B]补取反+1
(取反时含符号位)

标志位作用
零标志ZF、符号标志SF、进/借位标志CF、溢出标志OF称为条件标志。
条件标志在运算电路中产生,记录到专门寄存器。称为程序状态字寄存器或标志寄存器。

零标志ZF=1当F=0;
有符号数的符号标志SF:SF=Fn-1
(无符号数的符号位没有意义)
有符号数溢出标志OF:OF=Cn异或Cn-1
(不必关心无符号数溢出,模2n)
无符号数进位/借位标志CF:CF=Cout异或Cin
(不必关心有符号数进位/借位)

对加减运算电路认识
1.所有算术运算都基于加法器实现;
2.加法器不知道所算的是带符号数还是无符号数;
3.加法器不判定对错,总是取低n位作为结果,并生成标志信息。

原码乘法
可用ALU和移位器来实现乘法。

手工乘法的特点:
① 每步计算:X×yi,若yi = 0,则得0;若yi = 1,则得X
② 把①求得的各项结果X× yi 逐次左移,表示为X× yi×2-i
③ 对②中结果求和,即 (X× yi×2-i)求和 即为两数的乘积

计算机稍作改进:
① 每次得X×yi后,与前面的结果累加得到Pi,称之为部分积,减少了保存各次相乘结果的开销。
② 每次得X×yi后,不是左移与Pi相加,而将Pi右移后与X×yi相加。
因为加法运算始终对部分积中高n位进行,故用n位加法器可实现二个n位数相乘。
③ 对乘数中为“1”的位加并右移,对为“0”的位只右移,不加。

补码乘法
校正法

布斯算法

快速乘法器
设计快速乘法部件的必要性 :
• 乘法运算耗时多
• 比例大,大约1/3是乘法运算
快速乘法器的实现(由特定功能的组合逻辑单元构成)
如:阵列乘法器
阵列乘法器是原码乘去掉符号位,即为无符号数乘法。

除法运算
手算除法的基本要点
① 被除数与除数相减,够减则上商为1;不够减则上商为0。
② 每次得到的差为中间余数,将除数右移后与上次的中间余数比较。够减则上商为1;不够减则上商为0。
③ 重复执行②,直到商的位数足够。
带符号除法
原码除法:
恢复余数法;
不恢复余数法。

补码除法:
补码恢复余数法;
补码不恢复余数法。

(四) 浮点数运算及其运算部件

浮点数运算

加减法要点
基本要点:

乘除法要点
基本要点
(1) 求阶: Xe + Ye - 127 或者 Xe - Ye + 127
(2) 尾数相乘除: Xm */Ym (原码乘/除)
(3) 两数符号相同结果为正;相异为负;
(4) 结果的尾数高位为0需左规;最高位有进位需右规。
(5) 若尾数比规定的长,则需舍入。
(6) 若尾数是0,则阶码也置0,结果为0。
(7) 阶码溢出判断

五、指令系统

指令

一条指令须包含的信息
操作码:操作类型
(操作码长度:固定/可变)
源操作数:一个或多个源操作数的地址
(操作数来源:指令本身/寄存器/主存/I/O端口)
目的操作数:结果存放何处
(结果地址:寄存器/主存/I/O端口)
下一条指令地址:
(正常隐含在PC中,跳转时由指令给出)

(二)指令类型和格式

指令格式的基本原则
1 应尽量短
2 操作码位数要足够
3 有唯一的解释
4 指令长度应是字节的整数倍
5 地址字段的个数应合理
6 指令尽量规整

(三)数据类型

操作数的基本类型:
地址(指针)
无符号整数,用来确定主(虚)存地址
数值数据
定点数(整数):用二进制补码表示
浮点数(实数):IEEE754
位、位串、字符和字符串
用来表示文本、声音和图像等
逻辑(布尔)数据
按位操作(0-假/1-真)

这些操作数都存放在寄存器或内存单元中

(四)操作数的寻址方式

– 立即 / 寄存器 / 寄存器间接 / 直接 / 间接 / 堆栈 / 偏移
顾名思义。

(五)操作码的编码

操作码的编码有两种方式
– 定长操作码
– 扩展操作码

指令字也可定长或变长
–定长指令字 – 变长指令字

• 代码长度更重要时:变长指令字、变长操作码,存储更紧凑;
• 性能更重要时:定长指令字、定长操作码,访问和译码更快速。

指令长度与操作码长度是否可变没有绝对关系。
操作码定长不一定指令字定长;操作码变长指令字一般变长。

(六)指令系统

指令设计风格
– 按操作数地址指定方式来分:
累加器型 、堆栈型 、通用寄存器型、load/store型
– 按指令的复杂度来分:
复杂指令集计算机CISC (Complex Instruction Set Computer)
精简指令集计算机RISC (Reduced Instruction Set Computer)

指令系统举例
MIPS特点概述:
• 所有指令都是32位;
• 有些指令有26位目标地址;有些只有16位。
• 所有动作在1个时钟周期内完成;
• 所有运算都是32位的,没有字节和半字的运算;
• MIPS指令固定4个字节,x86平均长度3个字节,所以一般二进制文件比x86大;
• 寻址方式:只有一种内存寻址方式,即基地址加16位偏移地址;
• 没有栈指令PUSH和POP,对栈的操作都是统一的内存访问方式。
• 子函数的返回地址不存到栈中,而是存到$31寄存器。

六、CPU

(一)单周期数据通路的设计

CPU的功能
CPU执行指令。

每条指令都由四种基本操作实现:
主 存 —>寄存器(取指, 取数)
寄存器 —>主存(存结果)
寄存器 —> 寄存器或者ALU(取数,存结果)
算术或逻辑运算(运算,计算地址,PC计算)

操作功能用==RTL(Register Transfer Language)==描述
RTL通常规定:
(1)用R[r]表示寄存器r的内容;
(2)用M[addr]表示主存单元addr的内容;
(3)传送方向用“←”表示,传送源在右,传送目的在左;
(4)直接用PC表示其内容。

数据通路的位置
数据通路:
指令执行过程中数据经过的路径,包括路径中的部件,是执行部件。
(数据通路是由操作元件和存储元件通过总线方式或分散方式连接而成的进行数据存储、运算和传送的路径。)
数据通路组成:
• 组合逻辑元件(也称操作元件)
• 时序逻辑元件(也称状态元件,存储元件)
数据通路中的状态元件有两种:寄存器(组) + 存储器
数据通路的功能:
• 进行数据传送、运算、存储

单周期数据通路的设计

单总线一个时钟只传一个数据,效率低。
多总线同时传送数据,提高效率

选择MIPS指令集的一个子集作为CPU的实现目标

MIPS的三种指令类型:
°R: ADD and SUB
• add rd, rs, rt
• sub rd, rs, rt
°I: OR Immediate:
• ori rt, rs, imm16
°I: LOAD and STORE
• lw rt, rs, imm16
• sw rt, rs, imm16
°I: BRANCH:
• beq rs, rt, imm16
°J: JUMP:
• j target

• 下条指令地址计算与取指令部件
30位PC,三路选择:顺序、Branch(结合标志Zero)、Jump
• R型指令的数据通路
ALU两个操作数来自rs和rt,结果写到rd
• 访存指令的数据通路
符号扩展,数据在rt和主存单元中交换
• 立即数运算指令的数据通路
0扩展后的操作数送到ALU的一个输入端
• 分支和跳转指令的数据通路

综合所有指令的数据通路

一个单周期数据路径:

(二)单周期控制器的设计

控制器的功能:
指令译码,生成控制信号,控制数据通路的动作,是控制部件。

考察每条指令的执行过程和涉及到的控制信号的取值
• 公共操作:取指令和计算下址PC
• R-Type指令(add / sub)
• 立即数指令 (ori)
• 访存指令(lw / sw)
• 分支指令 (beq)
• 跳转指令 (j)
汇总各指令的控制信号取值
• 分两类控制信号:直接送往数据通路 / 送往局部控制单元
分析ALU操作对应的控制信号与func字段之间的关系

设计ALU局部控制单元
局控的另一支路是R型指令,ALUctr由func决定,需要根据func写出ALUctr的表达式

设计主控制单元

(三)微程序控制器设计与异常处理

**硬连线路控制器设计的优点和缺点 **
优点:速度快,适合于简单或规整的指令系统,例如,MIPS指令集。
缺点:结构庞杂,实现困难;修改、维护不易;灵活性差。

**微程序设计控制器的基本思想 **
基本思想:
• 仿照程序设计,为每个指令编制微程序;
• 每个微程序由若干条微指令构成,各微指令包含若干条微命令
(一条微指令相当于一个状态,一个微命令就是状态中的控制信号)
• 执行时依次取出微指令,译码产生微命令(即控制信号)。
• 存储器称为控制存储器(Control Storage),简称控存CS 。
特点:灵活,但速度慢。适用于复杂指令集。

**微程序、微指令、微操作和微命令的概念及其关系 **
微程序是一个微指令序列;
每条微指令是一个0/1序列,其中包含若干个微命令(即:控制信号);
微命令控制数据通路的执行

**微指令格式设计 **
• 微操作码字段

  • 水平微程序:不译法、字段直接编译法、字段间接编译法
  • 垂直微程序:垂直编译法
    • 下条微指令地址确定方式
  • 增量法(计数器法)
  • 断定法(下址字段法)
    下条微指令有四种情况:
    • 取指微程序:每条指令一定先执行取指微程序。
    • 第一条微指令:取指后转到该指令的第一条微指令。
    • 顺序执行时:顺序取下条微指令。
    • 分支执行时:根据不同指令选择下条微指令。

MIPS指令子集的微程序控制器设计

异常和中断的处理

°程序执行被 “中断” 的事件有两类
• 内部“异常”:在CPU内部发生的意外事件或特殊事件
按发生原因分为硬故障中断和程序性中断两类
硬故障中断:如电源掉电、硬件线路故障等
程序性中断:执行某条指令时发生的“例外(Exception)”,如溢出、缺页、越界、非法指令、除数为0、堆栈溢出、访问超时、断点设置、单步、系统调用等
• 外部“中断”:在CPU外部发生的特殊事件,外部中断是一种I/O方式,
通过“中断请求”信号向CPU请求处理。如实时钟、控制台、打印机缺纸、外设准备好、采样计时到、DMA传输结束等。

内部“异常” 按处理方式分为故障、自陷和终止三类:
故障(fault) :执行指令引起的异常事件,如溢出、缺页、堆栈溢出、访问超时等。
自陷(Trap) :预先安排的事件,如单步跟踪、系统调用(执行访管指令)等。是一种自愿中断。
终止系统(Abort) :硬故障事件,机器将“终止”,调出中断服务程序来重启操作系统。

外部中断处理:
1.关中断;
2.保护断点和程序状态;
3.识别异常事件。(软件识别(MIPS采用)、硬件识别(中断向量)(80x86采用))

(四)多周期处理器

特点:
• 时钟周期短
• 不同指令所用周期数可以不同,如:

  • Load: 5 cycles
  • Jump: 3 cycles(前两个都一样)
    • 在一条指令中功能部件可以重复使用。如:
  • Adder + ALU(多周期时只用一个ALU,在不同周期可重复使用)

计算机组成原理知识体系相关推荐

  1. 大学生计算机专业知识体系中核心地位课程

    问:数据结构,操作系统,计算机网络,计算机组成原理这几门课在大学生计算机专业知识体系中有怎样的地位? 答:你提的这几门课程,数据结构,操作系统,计算机网络,计算机组成原理,全都属于计算机专业最重要的核 ...

  2. 计算机专业408题目结构,2019考研408计算机组成原理知识:计算机系统层次结构

    计算机组成原理在408计算机综合考试中所占分值45分,说明是必考的重点内容,考生要在这部分多花时间复习.以下是新东方在线整理的的计算机组成原理知识,希望大家认真看. 2019考研408计算机组成原理知 ...

  3. 计算机组成定时方式,2019考研408计算机组成原理知识:总线操作和定时

    2019考研408计算机组成原理知识:总线操作和定时 2018-01-16 17:23 | 考研集训营 2019考研计算机如何来复习呢?文都考研集训营建议参加2019考研计算机的考生可以开始看专业课最 ...

  4. 408中的计算机组成原理,2019考研408计算机组成原理知识:总线概述

    计算机组成原理在408计算机综合考试中所占分值45分,说明是必考的重点内容,考生要在这部分多花时间复习.以下是新东方在线整理的的计算机组成原理知识,希望大家认真看. 2019考研408计算机组成原理知 ...

  5. 计算机组成加减交替法被除数,2019考研408计算机组成原理知识:定点数的表示和运算...

    2019考研408计算机组成原理知识:定点数的表示和运算 2018-01-12 17:05 | 考研集训营 2019考研计算机如何来复习呢?文都考研集训营建议参加2019考研计算机的考生可以开始看专业 ...

  6. 计算机组成原理 扩展指令的操作码,2019考研408计算机组成原理知识:指令格式

    2019考研408计算机组成原理知识:指令格式 2018-01-15 16:28 | 考研集训营 2019考研计算机如何来复习呢?文都考研集训营建议参加2019考研计算机的考生可以开始看专业课最基础的 ...

  7. 计算机组成原理知识总结(三)存储系统

    计算机组成原理知识总结 计算机组成原理知识总结(一)计算机概论 计算机组成原理知识总结(二)运算方法和运算器 存储系统 计算机组成原理知识总结 3.1 存储系统概述 3.1.1 存储系统的层次结构 程 ...

  8. 计算机科学技术知识体系--转载

    计算机科学技术知识体系 翟玉庆 yqzhai@seu.edu.cn http://cse.seu.edu.cn/people/yqzhai/resource/introcse/ 一,计算机科学与技术学 ...

  9. 计算机组成原理——知识结构体系

    计算机系统的基本概念和知识体系 1.计算机的软件和硬件概念 答:硬件.软件(系统软件.应用软件) 2.计算机系统的层次结构 答:微指令系统->机器语言->操作系统->汇编语言-> ...

  10. 工程计算软件_软件工程师的计算机基础理论知识体系

    想要成为一名合格的软件工程师,需要学习的计算机方面的很多知识和理论,这里给大家通俗的说下需要知道的基础理论知识体系有哪些. 以某大学的计算机相关专业的四年课程举例: Java语言.C语言.Python ...

最新文章

  1. HDU4858 项目管理 其他
  2. Android常见面试题
  3. 截图如何能截到鼠标?脑洞小方法
  4. 分布式调用时(WCF?)慎用 using(xxx){}
  5. c#winform pictureBox使用url加载图片
  6. Shell重定向的概念笔记
  7. 93. Restore IP Addresses 1
  8. Java虚拟机知识汇总,有这些还怕面试被问到?
  9. 视频问答PPT大放送丨中信银行邓琼-GoldenDB分布式数据库研发与应用实践
  10. @Autowired 与 @Resource的区别
  11. leetcode题库:6. Z字形变换
  12. ubuntu java jdk_在Ubuntu上编译Java JDK
  13. iOS: 彻底理解position与anchorPoint
  14. 读《SQL注入攻击与防御》第2版
  15. 常用定时任务(cron)表达式
  16. 扫描到计算机怎么转换为文字,扫描仪扫描出来的图片怎么转换成文字
  17. 60后刘备聘用80后诸葛亮的启示
  18. 由双系统变单系统——如何删除另一个操作系统
  19. FusionAccess桌面云介绍
  20. springboot+mybatis 利用PageHelper插件分页,结果第二页的返回分页信息还是和第一页一样。

热门文章

  1. weblogic14.c下载地址
  2. 【金万维】天联高级版客户端打开U8报错:未监听端口
  3. 火狐firebug和firepath插件安装方法
  4. bmfont使用心得
  5. 最新全套Web前端视频教程
  6. 常用的特征选择算法介绍
  7. Nuget包管理器将nupkg文件导入ASP.NET MVC5项目
  8. 计算机abcd地址,IP地址ABCDE的分类说明
  9. ctworklist php开发,DICOM worklist工作原理
  10. 1. Xamarin开发入门