设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案……
2022年12月13日修改
原来的博客是 2018-09-21 17:34:47 发布 的啊,偶尔也有人让详细讲讲……行吧……
题目:
设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。
解析:
Step1.指令系统的指令格式是:指令 = 操作码 + 地址码
Step2.“已知每个地址码占3位”,所以:
三地址指令的地址码共占33=9位,
二地址指令的地址码共占32=6位,
单地址指令的地址码共占3*1=3位。
Step3.“已知指令长度为12位”,所以:
三地址指令的操作码共占12-9=3位,
二地址指令的操作码共占12-6=6位,
单地址指令的操作码共占12-3=9位。
Step4.综上Step2和Step3,设a代表操作码位、b代表地址码位。所以:
三地址指令格式为 aaa bbbbbbbbb,
二地址指令格式为 aaaaaa bbbbbb,
单地址指令格式为 aaaaaaaaa bbb。
Step5.“要求指令系统包含4条三地址指令、8条二地址指令、180条单地址指令,x代表地址码位。”所以分配如下:
- 三地址指令
4=2^2,所以操作码从从000开始,至011结束,即三地址指令为000 xxxxxxxxx 至 011 xxxxxxxxx。 - 二地址指令
8=2^3,但是操作码位前3位不能与三地址指令的操作码相同,故从011的下一个100开始,操作码位的后3位从000开始,111结束,即二地址指令为100 000xxxxxx 至 100 111xxxxxx - 单地址指令
2^7=128 < 180 < 256,同理操作码前3位不能与三地址/二地址指令的操作码前3位相同,故从100的下一个101开始,操作码位的后6位从000000开始。
然而,指令101 000000xxx 至 101 111111xxx 只能容纳2^6=64条指令,因此操作码前3位自动加1,即110,此时指令为110 000000xxx。
因此,单地址指令的前64种为 101 000000xxx 至 101 111111xxx;
单地址指令的第65种至第128种为 110 000000xxx 至 110 111111xxx;
单地址指令的第128种至第180种为 111 000000xxx 至 111 110011xxx。
综上所述,指令系统的分配方案如下:
- 三地址指令:000 XXX XXX XXX 至 011 XXX XXX XXX
- 二地址指令:100 000 XXX XXX 至 100 111 XXX XXX
- 单地址指令:101 000 000 XXX 至 111 110 011 XXX
设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案……相关推荐
- 数据结构笔记(十二)-- 定长顺序结构的实现
定长顺序结构的实现 一.定长顺序结构的概述 定长顺序结构 是类似于线性表的顺序存储结构,使用一组连续的存储单元存储串值的字符序列. 二.串的定长顺序存储表示 # define MAXSTRLEN 40 ...
- 串的定长顺序存储结构|C++实现
数据结构里的串,是一种简单的线性表 一系列相连的字符就形成了字符串 空串不含有任何字符 空格也是字符 对照ASCII码 子串必须是一个串中连续字符组成的,哪怕所有元素都是一个串中的,但是不连续也不是子 ...
- 字符集编码 定长与变长
☯,首先,这并不是图片,这是一个unicode字符,Yin Yang,即阴阳符,码点为U+262F.如果你的浏览器无法显示,可以查看这个链接http://www.fileformat.info/inf ...
- 指令格式之定长操作码和扩展操作码
学习来源:王道计算机考研 计算机组成原理 4.1指令格式 一.定长操作码 操作码长度固定,若操作码n位,可以表示2^n条指令 二.扩展操作码 这个例子假设地址码为4位,所以: 三地址指令 地址码共1 ...
- 计算机硬件创意海报,游戏设计一机搞定 机械师创物者设计本评测
游戏设计一机搞定 机械师创物者设计本评测 2019-10-27 17:06:53 2点赞 3收藏 7评论 PC市场步入细分阶段已有几年,目前最为大家所熟知的两类笔记本细分产品分别是:轻薄本和游戏本.但 ...
- 华科计算机组成原理 单总线CPU设计 定长变长现代时序中断 指令周期3级时序 (LogisimEducoder)
大家好,我是小黄鸭,又来更新了,应小伙伴的需要,定长.现代时序.中断.实验也过了. 2022/1/4大家好,我是小黄鸭,由于21年下半年在考研,因此很多消息没有回复,现在大家有问题可以来私聊我 实验所 ...
- c语言实现定长顺序存储,c语言:定长顺序串的基本操作实实现
// 串的定长顺序存储实现.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include #include #include #incl ...
- java wav 切割_WAV音频定长分段切取
出于研究项目的需要,我需要设计一个WAV音频文件定长切取的小功能:给定一个WAV文件.一组记录时间信息的数组t_Array以及一个阈值ΔT,要求从这个文件中切取出以t_Array记录的每个时刻t为中心 ...
- 数据结构 | 实现串(定长顺序存储表示法)
-------------------------------------------- 定长顺序存储表示法 -------------------------------------------- ...
最新文章
- mysql导入数据表大小限制,解除phpMyAdmin导入大型MySQL数据库文件大小限制
- 2021 大厂实习笔试
- linux磁盘永久挂载教程,linux 永久磁盘挂载
- anaconda 设置python3为主_【windows】下Anaconda详细安装过程
- LeetCode-26 删除排序数组中的重复项
- mac java连通r_MacOS安装rJava
- 如何给自己的电脑硬盘分区
- 机器学习--文本分析(jieba)
- 《创业维艰》:如何完成比难更难的事
- 服务器过载保护(下篇)——过载处理新方案
- mysql密码和权限配置
- 数据结构——二叉树先序、中序、后序及层次四种遍历(C语言版)
- 保山高考成绩查询2021,2021年保山高考状元名单公布,保山文理科状元是谁多少分...
- QQ农场之新图鉴江苏印象
- CSGO社区服搭建记录
- uni-app 配置 以及 使用微信云函数
- 敏捷式Mybatis
- 银河大百科【宇宙的数量级】
- Iterator patten 读书笔记
- java –cp ./:_7位专家– 7条意见:您想在Java 14中看到什么?