首页 > 试题广场 >

假没要监视8台机器的运行状态,我们可以用一个8-bit 矢量

[问答题]
假没要监视8台机器的运行状态,我们可以用一个8-bit 矢量BUSYNESS来代表它们。其中每个代表一台机器,如泫机器忙,则对应位为0,若空闲则为1。每个bit的编号从右向左,别是0一7。
位矢量BUSYNESS的含文是,如果BUSYNESS=11000010,则表示第以6、7号机器处干空状态,从而可以为它们配任务·
假设我们任务分配给了7号机器,则将通过AND运算更新BUSYNESS矢量的bit 7。AND运算在两个输入中,一个是当当前BUSYNESS矢量,.另一个是屏蔽字01111111。该屏蔽字的目的就是在不影响其他位的情况下,清除BUSYNESS矢量的第7位。操作后的结果是,BUSYNESS矢量从11000010改变为01000010
回答以下问题:
a.如果要标识2号机器为“忙碌",屏蔽字应该是多少?执行什么逻辑操作?
b.如果要同时标识2、6号两台机器为“空闲”,屏蔽字应该是多少?执行什么逻辑操作(提示:只要一次操作即可)?
c.如果要标识所有机器都处于“忙碌"状态,屏蔽字是多少?执行什么操作?
d.如果要表示所有机器都处于“空闲"状态,屏蔽字是多少?执行什么操作?
e.编写一个程序,专门操作第2位。如果第2位为0,则程序输出00000000;如果篤2位为1,则程序输出10000000。换句话说,它等价于这样一种情况,假设BUSYNESS的值为
b7 b6 b5 b4 b3 b2 b1 b0


那么程序输出则为
b2 0 0 0 0 0 0 0


(提示:一个二进制数和本身相加会产生什么情况?)

这道题你会答吗?花几分钟告诉大家答案吧!