问题标签 [ijvm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mic-1 - 在 IJVM 中进位加法
IJVM 中的 IADD 指令将两个 1 字数字相加。当我添加EEEEEEEE
到自身时,我得到DDDDDDDC
. 进位1会发生什么?我怎么才能得到它?它是否保存在寄存器中?
java - 将代码转换为 IJVM
我已将代码片段翻译为 IJVM,但不确定它是否有效。告诉我我做得对不对。或者我如何检查代码是否有效。这是代码。
这是我所做的 IJVM 代码://以下 3 行设置 a = 0
java - IJVM 练习,交换 4 个元素堆栈中的 2 个元素
我正在尝试创建一个微程序函数,给定堆栈中的 4 个值,交换第三个和第四个值。我称它为“mswap”,这是迄今为止的微码:
mswap1 SP = SP - 1
mswap2 SP = SP - 1
mswap3 MAR = SP - 1
mswap4 rd
mswap5 MAR = H
mswap6 wr
mswap7 MAR = SP
mswap8 rd
mswap9 MAR = SP - 1
mswap10 wr
mswap11 MAR = H
mswap12 rd
mswap13 MAR = SP
mswap14 wr
mswap15 SP = SP + 1
mswap16 SP = SP + 1; goto Main1
这是一个示例程序:
.main 开始: BIPUSH 0x39 BIPUSH 0x30 BIPUSH 0x36 BIPUSH 0x35 MSWAP OUT OUT OUT OUT HALT .end-main
它应该给出 5690 的输出 可悲的是,输出只有 56 就像我“错过”了两个堆元素。这是由于过度使用 SP = SP -1 造成的吗?在编写类似的函数来交换第二个和第三个元素时它工作得很好
numeric - 如何在 IJVM 上仅输入数字字符?
我将在 IJVM 上执行一个“简单程序”,但它要求:
您必须只输入数字字符(0x30 到 0x39)。
因此,如果我插入例如(A 或 b 或 g 等),它将以“HALT”停止。如何在没有字母字符的情况下设置从 0x30 到 0x39 的值的条件?
assembly - 如何在 IJVM 中取反一个数字?
我正在考虑一种NOT
为 IJVM 实现操作/指令的方法,以便我可以编写一个乘法 JAS 方法,但是我在尝试实现一个否定方法时遇到了麻烦。
任何人都可以帮忙解决这个问题吗?
java - 如何在 IJVM 上创建 IUSHR4?
我需要创建 MAL 的扩展。所以,首先我尝试添加 mic1sim.mal
但不起作用!有人可以解释我哪里错了吗?
assembly - MIC IJVM 2 位简单和
只是一个关于 IJVM 计算的简单问题,因为我在他们的文档中找不到解决方案。
假设我们需要执行以下计算:
IADD ----> 从堆栈中弹出两个单词;推他们的总和
我知道解决方案可能很简单,但是对于我的一生,我不记得如何将加法/输出转换为实际数字。如何让它输出“5”而不是这个愚蠢的“e”?:)
干杯。
assembly - 如何在 IJVM 中输出超过 9 的数字?
我搜索了很多,但没有成功。也许你可以帮助我,提供一些建议或来源,我可以找到答案。如果在带有 MIC-1 模拟器的 IJVM 架构中超过 9,我无法理解如何输出一个数字,我有一个简单的 2 数字加法代码。
assembly - IJVM 麦克风 | 返回大于 9 的整数结果
我在 IJVM 中编写了一个代码,它对 1 位数字执行乘法、加法和减法。
基本上它读取输入字符,然后检查算术符号(+|-|*),读取第二个字符并执行相应的代码(基于符号)计算并输入结果
所以输入:
2+4=
结果输出:
6
输入:
2*4=
输出:
8
现在的问题显然是我不能输出大于 9 的值,因为更大的数字不止一个字符。9+1= 输出 ":",
9+2=";" (0x3B)
9+3="<" (0x3C)
现在我尝试查看add.jas示例,该示例作为 ontko.com 网站上的 IJVM MIC 文档的一部分提供。它从输入中获取 2 个数字并输出总和。然而,它处理输入和输出的方式只是说......不同。逐行浏览后,我仍然无法弄清楚如何输出由 2 位或 3 位数字组成的数字(输出结果的要求高达“999”,输入计算的要求是个位数)。理想情况下,我不需要 add.jas 生成的输出开头的那些零,这些零是不需要且没有目的的。我是说: (”
2+4=00000006
“?给我休息一下。)
能够在输出中处理更大的数字(最多 999)以实现我的代码的最有效方法是什么?
我相信绝对没有必要粘贴我的整个代码,因为在 IJVM 中更高级的人会知道我在说什么 - 他肯定对我的代码的外观有一个很好的了解,基于我的描述。
作为记录:我不愿意分享我的代码,因为这是 UNI 分配,并且关于重复代码/复制他人的规则非常严格,对双方都造成了相当严重的后果。而且我知道一个事实,我的 UNI 中的一些/许多具有相同任务的人正在互联网上进行侦察。谢谢你的理解!