| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
大量收QQ微信精准粉/交友粉,非诚勿扰千里之行 始于足下
共有 6010 人关注过本帖
标题:一个关于URISC程序的编写问题
只看楼主 加入收藏
蒙哥始终是哥
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2015-6-11
结帖率:100%
  已结贴   问题点数:20  回复次数:8   
一个关于URISC程序的编写问题
仅存在一条指令。这条唯一的指令有三个操作数,每个操作数均为一个存储单元地址,指令的功能是对前两个存储单元中的操作数做减法,将结果写入第二个操作数所指的存储单元中。如果减法的结果小于0,则发生跳转,执行第三个操作数所指向的存储单元中的指令,否则;继续执行后继指令。
因为只有一条指令,所以不需要操作码,因此该指令的格式如下:
[L:] a, b, c                   ;mem[b] = mem[b] - mem[a],if (mem[b]< 0) goto c
其中,L为可选的标号,“;”后面是注释,此处实际上是对该指令功能的形式化描述。
尽管URISC只有一条指令,但是它是一种通用计算机,也就是说用这一条指令可以编写出实现任何复杂算法的程序。
例如,将地址为SRC的存储单元中的内容传送到地址为DEST的存储单元中。可以编写出如下程序:
START:               DEST,        DEST,        ADD
ADD :                 SRC,          TEMP,       NEXT
NEXT:                 TEMP,       DEST,        CONT
CONT:               ...
                            ...
TEMP:               WORD      0
其中,WORD是伪指令,用于将指定的内存单元初始化为指定的常数。
根据以上说明,完成如下:
     1、 编写一段URISC程序,将a和b相加,结果写入a中,b保持不变。
     2、 编写一段URISC程序,将a和b相乘,结果写入c中。约定存储单元one包含常数1,a和b均大于0,并且a和b可以被程序修改。

求助啊,连给的例子都不太看得懂...求教大牛。
参考:http://en.wikipedia.org/wiki/One_instruction_set_computer#Example
搜索更多相关主题的帖子: 宝马  
2015-06-11 19:00
wmf2014
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:153
帖 子:1705
专家分:9501
注 册:2014-12-6
  得分:5 
不需要操作码,怎么知道是做减法?还需要更多的该语言的资料。

能编个毛线衣吗?
2015-06-11 21:06
蒙哥始终是哥
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2015-6-11
  得分:0 
回复 2楼 wmf2014
人们可以设计出只有一条指令的计算机,这种计算机称为单指令计算机(Single Instruction Computer,SIC)。因为只有一条指令,指令集不能再精简,所以这种计算机也称为终极精简指令集计算机(Ultra Reduced Instruction Set Computer,URISC)。这条唯一的指令有三个操作数,每个操作数均为一个存储单元地址,指令的功能是对前两个存储单元中的操作数做减法,将结果写入第二个操作数所指的存储单元中。如果减法的结果小于0,则发生跳转,执行第三个操作数所指向的存储单元中的指令,否则;继续执行后继指令。

这是一道题,就给了这些东西还有一个例子....感觉真看不太懂。
2015-06-12 16:01
取名字
Rank: 8Rank: 8
等 级:贵宾
威 望:20
帖 子:228
专家分:906
注 册:2015-4-27
  得分:0 
这一题,考察的是数学逻辑思维。和编程语言没有关系。
2015-06-12 21:28
取名字
Rank: 8Rank: 8
等 级:贵宾
威 望:20
帖 子:228
专家分:906
注 册:2015-4-27
  得分:0 
这应该是一个设想,让指令集精简化。
2015-06-12 21:30
蒙哥始终是哥
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2015-6-11
  得分:0 
回复 4楼 取名字
可是根本无法看懂啊...求助!
2015-06-13 22:47
wmf2014
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:153
帖 子:1705
专家分:9501
注 册:2014-12-6
  得分:0 
你想想做情报工作的人怎么面对一堆无规律的字符找出逻辑关系的吧,手头有资料就自己慢慢研习。

能编个毛线衣吗?
2015-06-14 08:13
取名字
Rank: 8Rank: 8
等 级:贵宾
威 望:20
帖 子:228
专家分:906
注 册:2015-4-27
  得分:15 
对于加法,可以通过减法将其中一个加数转化成负数,然后用另一个加数减掉它,就可以得到和。
加法做出来了,乘法自然就能做出来了。
2015-06-14 12:31
EEysc
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2017-4-28
  得分:0 
回复 8楼 取名字
那请问怎么对加法的次数进行统计呢
2017-04-28 12:23







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024267 second(s), 7 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved