408-每日一题-2021-10-04

408-每日一题-2021-10-04

知识已经忘记的内容

在这里插入图片描述

当采用分段编码,即采用字段直接编码时,互斥性微命令放在同一个段内,相容性微命令放在不同的段内使其并行执行

微程序:由微指令序列组成,每种指令对应一个微程序
利用存储程序的原理,将所有的为指令的微程序都存入控制存储器(CM)中。利用了封装的思想,典型的CISC指令集系统,因为其指令复杂
硬布线系统就用RISC指令集系统,用硬件逻辑组件组成,简单

一个微指令可能包含多个微命令
一条指令=一个微程序
一个微程序=若干的微指令
一个微指令=若干的微命令
当部件接收微命令后就执行微操作,一个微命令对应一个微操作

水平型微指令
优点:执行速度快
缺点:一条微指令过长,不易修改

一条微指令中包含多条的微命令
直接编码:在指令中,的OP操作字段,每一位就代表一个微命令,因此n个微命令就需要n位来表示OP

在这里插入图片描述
相容命令:允许微命令并行完成
互斥命令“不允许微命令并行完成

字段直接编码: 目的是为了减少OP的位数 ①相容性命令放在不同的微命令中(即放在不同的段内),使其并行执行 ②互斥性命令放在同一个微命令中(放在相同的段内) ③还需要在每个段内留出一个状态码如000,即3位的表示一个段的时候,只能容纳7个互斥的微命令,剩下的一个码用于表示不发出任何的微命令

例题:某计算机的控制器采用微程序控制方式,微指令中操作控制字段采用字段直接编码法,共有33个微命令,构成五个互斥类,分别包含7、2、12、5和6个微命令,则操作控制字段至少为多少位?
①7+1=8 需3位表示
②12+1=13需要4位表示
③5+1=6需要3位表示
④6+1=7需要3位表示
⑤2+1=3需要2位表示
因此共需要3+3+3+4+2=15位表示
而如果采用直接编码方式则需要33位来表示OP

垂直型微指令
一条微指令中只包含一条的微命令
优点:易于编写修改
缺点:执行效率低效

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些思路和代码示例。 首先,我们需要创建一个日历显示的界面,可以使用Swing或JavaFX等GUI工具包。在这个日历上,我们需要添加一个按钮或菜单选项,用于记录每日的账目。 在Java,我们可以使用Calendar类来获取当前日期和时间,以及进行日期的计算和格式化。例如,我们可以使用以下代码来获取当前日期: ```java Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.MONTH); // 0-based int day = calendar.get(Calendar.DAY_OF_MONTH); ``` 接下来,我们可以使用一个文本框或对话框,让用户输入当日的账目。例如: ```java String expense = JOptionPane.showInputDialog("请输入当日的账目:"); ``` 然后,我们可以将这个账目保存到一个文件,以便以后进行查询和统计。可以使用Java的文件读写功能来实现。 最后,我们可以添加一个查询功能,让用户能够根据日期范围或关键词来查找账目。例如,我们可以使用以下代码来读取文件的账目记录,并输出到控制台: ```java Scanner scanner = new Scanner(new File("expenses.txt")); while (scanner.hasNextLine()) { String line = scanner.nextLine(); if (line.contains(keyword)) { System.out.println(line); } } scanner.close(); ``` 这只是一个简单的示例程序,您可以根据自己的需求进行扩展和改进。希望能对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值