● CPU 中的 (22) 的值可自动加1,以便实现程序指令的顺序执行。
(22)
A. 指令寄存器(IR)
B. 程序计数器(PC)
C. 地址寄存器(AR)
D. 指令译码器(ID)
下面几种芯片是PC的常用芯片,它们之中可接管总线控制数据传送的是()。
A.定时器/计数器芯片
B.串行接口芯片
C.并行接口芯片
D.DMA控制器芯片
下列关于程序计数器(PC)的描述中,错误的是()。
A.保存将要提取的下一条指令的地址
B.保存当前正在执行的下一条指令的地址
C.在程序执行时,CPU将自动修改PC的内容
D.在程序开始执行前必须将它的起始地址送入PC
当复位信号(RESET)来到时,CPU便结束当前操作并对标志寄存器、IP、DS、ES、 SS及指令队列______,而将CS设置为一。
A.程序计数器的内容加上指令中形式地址值
B.基址寄存器的内容加上指令中形式地址值
C.指令中形式地址中的内容
D.栈顶内容
● 为实现程序指令的顺序执行,CPU (1) 中的值将自动加1。
(1)
A. 指令寄存器(IR)
B. 程序计数器(PC)
C. 地址寄存器(AR)
D. 指令译码器(ID)
【问题1】(7分) 引入两个伪指令:a= R(X)表示将在库数量X值读入到变量a中;W(a,X)表示将变量a的值写入到在库数量X中。入库操作用下标I表示,出库操作用下标O表示。 将出库和八库操作分别定义为两个事务,针对并发序列:ao=Ro(X),aI=RI(X),ao=ao -1,Wo(ao, X),aI- aI+1,WI(aI,X)。其中变量ai和ao分别代表入库事务和出库事务中的局部变量。 (1)假设当前X的值为3,则执行完上述并发序列的伪指令后,X的值是多少?简述产生这一错误的原因(100字以内)。 (2)为了解决上述问题,引入独占锁指令XLock(X)对数据X进行加锁,解锁指令Unlock(X)两对数据X进行解锁。入库操作用下标I表示,如XLockI(X);出库操作用下标O表示,如Unlocko(X)。请根据上述的并发序列,给出一种可能的执行序列,使其满足2PL协议。 【问题2】(8分) 下面是用SQL实现的出入库业务程序的一部分,请补全空缺处的代码。 CREATE PROCEDURE IOstack(IN BookNo VARCHAR(20), IN Amount INT){ //输入合法性验证 if not(Amount=1 or Amount=-1) return -1; //修改图书表当前位置 UPDATE 图书 SET 当前位置=GetPos(BookNo,Amount)//系统生成 WHERE (a) ; if error then {ROLLBACK;return -2;} //修改在库数量 UPDATE 书目 SET 在库数量= (b) WHERE EXISTS(SELECT * FROM 图书 WHERE 书号=BookNo AND (c) ); if error then {ROLLBACK;return -3;} (d) ; return 0; }
为实现程序指令的顺序执行,CPU(1)中的值将自动加l。
A.指令寄存器(IR)
B.程序计数器(PC)
C.地址寄存器(AR)
D.指令译码器(ID)