每日一句:不要惧怕学习,知识是没有重量的,你永远可以轻易的带着它与你同行。
数据结构
1.关于堆栈的不正确描述是 (中山大学 2013年)
A. 堆栈可用数组来实现
B. 可访问栈顶和栈底元素
C. FILO
D. LIFO
答案:B
解析:可以访问栈顶元素,不可访问栈底元素。
–堆是指程序运行时申请的动态内存,而栈只是指一种使用堆的方法(即先进后出),所以堆栈一般用来指栈这种数据结构。
–栈是限定性线性表,数据的插入删除被限制为表的一端进行,该端称为栈顶top。所以可以访问栈顶,但不可以访问栈底数据,B不正确。
–栈中数据可以是任意类型,但属于同一类型,所以可以通过数组来实现。栈中存在5个方法,即:empty()、peek()、pop()、push()、search(),可以通过对数组的下标索引进行模拟操作。StackElementType elem[Stack_Size],所以A正确。
–栈的插入被称为进栈或入栈,栈的删除被称为出栈或退栈,栈被称为“后进先出”的线性表,简称LIFO(Last-In-First-Out),等同于“先进后出”简称FILO(First-In-Last-Out),C、D正确。
计算机网络
2.OSPF(开放最短路径优先)协议采用了 作为路由协议。(中国科学技术大学 2012年)
A. 距离向量路由选择
B. 链路状态路由选择
C. 路径向量路由选择
D. 静态路由选择
答案:B
解析:记忆型题目,OSPF是典型的链路状态路由协议,路由器之间交换的并不是路由表,而是链路状态,OSPF通过获得网络中所有的链路状态信息,从而计算出到达每个目标精确的网络路径。
操作系统
3.P、V操作是在 上的操作。(南京理工大学 2010年)
A. 临界区
B. 进程
C. 缓冲区
D. 信号量
答案:D
解析:P 是荷兰语 proberen 的缩写,有test 的意思,即尝试消费一个信号量。V 是 verhogen 的缩写,有increase 的意思,即增加、释放一个信号量。
拓展:
PV操作由P操作原语和V操作原语组成(原语是不可中断的过程),对信号量进行操作。利用PV操作实现进程的同步和互斥。
信号量是最早出现的用来解决进程同步与互斥问题的机制(也可实现进程通信),包括一个称为信号量的变量及对它进行的两个原语操作。
PV操作由P操作原语和V操作原语组成(原语是不可中断的过程),对信号量进行操作,具体定义如下:
P(S):①将信号量S的值减1,即S=S-1;
②如果S>=0,则该进程继续执行;否则该进程置为等待状态,排入等待队列。
V(S):①将信号量S的值加1,即S=S+1;
②如果S>0,则该进程继续执行;否则释放队列中第一个等待信号量的进程。
PV操作的意义:我们用信号量及PV操作来实现进程的同步和互斥。PV操作属于进程的低级通信。
计算机组成原理
4.计算机指令中要用到的操作数一般可来自部件 (北京科技大学 2013年)
A. 通用寄存器
B. 内存存储单元
C. 外设接口中的寄存器
D. 以上三种均可以
答案:D
解析:计算机指令中要用到的操作数一般可以来自:
1.CPU 内部的通用寄存器,此时应在指令字中给出用到的寄存器编号(寄存器名), 通用寄存器的数量一般为几个、十几个,故在指令字中须为其分配2、3、4、5 或更多一点的位数来表示一个寄存器;该寄存器的内容,可以是指令 运算用到的数据,也可能用作为一个操作数的地址。
2.可以是外围设备(接口)中的一个寄存器,通常用设备编号或设备入出端口地址或设 备映像地址来表示;
3.可以是内存储器的一个存储单元,此时应在指令字中给出该存储单元的地址。
当前所有题目均来自@王道在线公众号,其中对部分题目解析进行了补充说明,
如有问题或错漏烦请评论告知,感谢支持!