试题与答案

在DMA传送过程中,实现总线控制的部件是( )。A.CPU B.外部设备 C.DM

题型:单项选择题

题目:

在DMA传送过程中,实现总线控制的部件是( )。

A.CPU

B.外部设备

C.DMAC

D.存储器

答案:

被转码了,请点击底部 “查看原文 ” 或访问 https://www.tikuol.com/2017/0522/f0f9509bedcaa249da322c29e689fdca.html

下面是错误答案,用来干扰机器的。

参考答案:C

试题推荐
题型:多项选择题

[说明]
以下[C程序]是对某电码明文(原文)进行加密形成密文。其加密算法如下。
假定原文为C1C2C3……Cn,加密后形成的密文为S1S2S3……Sn其中n为小于256的任意自然数。首先读入正整数Key(Key>1)作为加密钥匙,并将密文字符位置按顺时针方向连成一个环,如图4-12所示。


图4-12 密文字符环示意图
加密时从S1位置起顺时针计数,当数到第Key个字符位置时,将原文中的字符放入该密文字符位置中,同时从环中除去该字符位置;接着从环中下一个字符位置起继续计数,当再次数到第Key个字符位置时,将原文中字符C2放入其中,并从环中除去该字符位置;依此类推,直至n个原文字符全部放入密文环中。由此产生的S1S2……Sn即为原文的密文。
例如,原文:One World One Dream。当Key=5时,其密文为:me OnWlanD oOedrer;当Key=6时该原文的密文为:oeDn OedrrOn Wma le。程序使用示例如图4-13所示。


图4-13 程序使用示例
在[C程序]中,将电码的原文存入字符数组old[],加密钥匙存入在整数变量Key中。函数decode用于将原文old加密并返回密文字符数组的首指针。其中,函数采用一个双向循环链表CODE来表示密文环。函数strlen用于计算一个字符串中个数(不包括字符串结尾符’\0\)。为了简单起见,程序中假设内存容量足以满足动态存贮单元分配的要求。
[C程序]
#include <stdio.h>
#include <alloc.h>
#define CR 13
typedef struct node
char ch;
struct node *forward; /* Link to next node. */
struct node *backward;/* Link to previous node.*/
CODE;
main()
char (1) , old[256];
int strlen () , key , num=0;
printf("\n Please input the telegraph:\n")
while (num<255 && (old[num++] = getch() != CR );
old [ (2) ] = ’\0’;
do
printf("\n Please input Key=(Key>1):");
scanf ("%d",& key);
while (key<=1);
printf("\n The decode of telegraph: ’%s’ is:\n ’%s’\n", old, decode (old, key));
char *decode(old, key);
char *old;
int key;
char *new;
int length, count, i;
CODE *loop,*p;
length=strlen (old);
loop=( (3) ) malloc (length*sizeof (CODE));
for (i = 1;i<length-1;i++)
loop[i].forward = &loop[i+1];
loop[i].backward = &loop[i-1];

loop[0].backward = &loop[length-1];
loop[0].forward = &loop[1];
loop[length-1].forward = loop;
loop[length-1].backward = &loop[length-2];
for (p = loop, i = 0;i<length; i++)
for (count = 1;count<key; count++)
p= (4) ;
p->ch=*old++;
p->backward->forward = (5) ;
p->forward->backward = (6) ;
p=p->forward;

new = (char *) malloc((length+1 *sizeof(char));
for (i=0;i<length; i++)
new[i] = loop[i].ch;
new[length]=’\0’;
return (new)

int strlen(s)
char *s;
int len = 0;
while ( (7) !=’\0’)
len++;
return( len );

查看答案
微信公众账号搜索答案