单选题
某计算机有14条指令,其使用频度分别如图1-4所示。
单选题
A.3 B.4 C.5 D.6
单选题
A.2.8 B.3.4 C.3.8 D.4.2
【正确答案】
B
【答案解析】[解析] 在使用等长码设计指令操作码时,二进制编码的码长必须能表示所设计的指令,而且各指令操作码的长度是一样的。由于3位编码只能表示8条指令,所以14条指令需4位编码来表示,故用等长编码时,其编码的平均码长为4位。
在采用只有两种码长的扩展操作码编码时,应根据表中所给出的指令使用频度分成两组,将使用频度高的6条指令用3位编码来表示。3位编码可编出从000到111共8种形式,将其中的000到101表示使用频度高的6条指令。剩余的两种编码110和111最高两位同时为1,恰好作为长码的扩展标识,其后再用3位编码构成最高两位同时为1的5位编码,这5位编码有8种形式,正好表示剩余的8种使用频度的8条指令。由于3位编码指令的使用频度为0.8,而5位编码的使用频度为0.2,故该编码方式的平均码长为:3×0.8+5×0.2=3.4(位)。