刚才考了自己一次,下面我把题和答案放到下面
CPU中不含有以下选项中的 C
A: 运算器
B: 寄存器
C: 内存
D: 时钟
这是一道送分题,CPU包含以下几种原件
寄存器
控制器
运算器
时钟
CPU中负责计时的部件是 F
E: 程序计数寄存器
F: 时钟
G: 控制器
H: 靠人来计时
答案已解决,妈的,错的离谱,选的F,时钟相当于我们的计算频率,时钟脉冲:CPU内部有个石英晶振,它的正常振动频率就是你CPU的主频,时钟脉冲就是每次振动产生的脉冲,之所以叫时钟,因为它是整个系统的时间工作基准
对于汇编以下说法正确的是 J
I: 汇编需要编译成机器码
J: 汇编是助记符,和机器码一一对应
K: 汇编是给CPU看的
L: 编译器编译出来的是汇编
其实应该是经过编译器后和机器语言对应,只是为了让我们书写从而改变了些顺序。
以下哪个寄存器名是错的 D
A: 累加寄存器
B: 程序计数器
C: 标志寄存器
D: 控制寄存器
CPU寄存器分为以下几种:
- 累加寄存器
- 标志寄存器
- 程序计数器
- 基址寄存器
- 变址寄存器
- 指令寄存器
- 通用寄存器
以下哪个说法是错误的 C
A: 计算机能够执行分支是因为标志寄存器
B: 计算机能够执行循环是因为程序计数器
C: 控制器控制程序的分支及循环运行
D: 标志寄存器负责保存计算后结果的状态
控制分支是标志寄存器的任务,循环运行是程序计数器的作用,控制器负责控制数据读取,写出,更换等操作
请写出二进制,八进制,十进制,十六进制(9之后使用字母顺序)
1 1 0X01
10 2 0X02
11 3 0X03
100 4 0X04
101 5 0X05
110 6 0X06
111 7 0X07
1000 8 0X08
1001 9 0X09
1010 10 0X0A
1011 11 0X0B
1100 12 0X0C
1101 13 0X0D
1110 14 0X0E
1111 15 0X0F
10000 16 0X10
10001 17 0X11
10010 18 0X12
10011 19 0X13
10100 20 0X14
八进制没学,为了方便写的不是非常正规,转换方法很简单,不说了
请使用公式写出二进制数 011100001100000111000对应的十进制,需要解题步骤:
011100001100000111000=2^3+2^4+2^5+2^11+2^12+2^13+2^18+2^19=8+16+32+2048+4096+131072+262144=923704
这么算会累死人的,今天学了个新的方法
二进制转16进制
二进制数:0 1110 0001 1000 0011 1000
对应16进制:0 e 1 8 3 8
平方求和:8 + 3 * 16 + 8 * 16^2 + 1*16^3 + 14*16^4
将二进制转换成十六进制,然后再用这个十六进制求十进制就会方便很多
假设一个32位带符号(有负数)的二进制数 0111 0010 1110 1111 0011 1111 0000 1100,请写出对应的十进制数 1928281868
开头数字为0说明为正数,正常求和
假设一个32位带符号(有负数)的二进制数 1111 0010 0010 1111 0011 0110 0000 1100,请写出对应的十进制数 -231786996
开头字母为1说明为负数,去掉符号位并减一之后取反再做运算
假设二进制数(16位)0101 1111 0000 1111左移3位,结果是:
1111 1000 0111 1000
没什么好说的
假设二进制数(16位)0101 1111 0000 0000逻辑右移3位,结果是:
0000 1011 1110 0000
题目说了逻辑右移,那就正常位移就可以了
假设二进制数(16位)0101 1111 0000 0000算数右移3位,结果是:
0000 1011 1110 0000
虽说算术右移,但首位是0,无需加一
假设二进制数(16位)1101 1111 0000 0000算数右移3位,结果是:
1111 1011 1110 0000
此二进制首位为1,需要进行补一
- 请问以下代码输出的结果是 C
Int main()
{
Float sum = 0;
For( int I = 0; i< 100; i++)
{
Sum += 0.1;
}
Printf(“%f”,sum);
}
A: 10.0000000
B: 10.0000002
C: 不知道
D: 1.0000000
前面一章重点讲过此环节,计算机在做浮点数运算时很容易出不可控误差,解决方法一忽略,二将浮点数变为整数运算
内存为什么有地址,我们是通过什么计算出内存的大小的?
内存中有许多空间,地址的存在可以让cpu更快捷的找到所需数据的位置
由他的寻址位数*数据得出
编程时读取和写入内存速度最快的数据结构是 A
A: 数组
B: 栈
C: 队列
D: 链表
之前说过计算机在做累加运算时是最快的,数组正好符合这一要求
请说明下上一题中几种数据结构的优势
数组,读取速度快,但删除很慢
栈,有记录,可回溯
链表:删除,插入,添加 速度快
队列:便于数据进行队列操作
程序是在内存中执行的 A
A: 对
B: 错
所有的数据都是一直(包括关机时)存储在 C
A: 内存
B: CPU
C: 硬盘
D: 我脑子里
常识问题