Questions tagged «interpreter»

涉及为各种语言或形式编写口译员的任务。

15
跟着我重复!
给定一个字符串作为参数,输出最长的不重叠重复子字符串的长度;如果没有这样的字符串,则输出零。 您可以假设输入字符串不为空。 例子 abcdefabc:子字符串abc在位置1和7处重复,因此程序应输出3 abcabcabcabcab:abcabc或bcabcaor cabcab重复,因此程序应输出6。(子字符串abcabcabcab也被重复,但是出现的部分重叠,因此我们不接受它)。 aaaaaaa:aaa例如在位置1和4处重复,因此程序应输出3 abcda:a重复,因此程序应输出1 xyz:没有重复的字符串→ 0 ababcabcabcabcab:应返回6 这是代码高尔夫球,因此最少的字节获胜。
23 code-golf  string  code-golf  code-golf  kolmogorov-complexity  primes  code-golf  kolmogorov-complexity  hexadecimal  code-golf  code-golf  string  code-golf  string  random  code-golf  array-manipulation  code-golf  ascii-art  kolmogorov-complexity  random  code-golf  array-manipulation  code-golf  stateful  code-golf  hello-world  code-golf  string  code-golf  interpreter  lisp  code-golf  restricted-source  quine  palindrome  code-golf  ascii-art  random  generation  challenge-writing  ascii-art  random  polyglot  maze  answer-chaining  string  cops-and-robbers  whitespace  code-golf  string  cops-and-robbers  whitespace  code-golf  number  sequence  code-golf  date  code-golf  ascii-art  decision-problem  code-golf  combinatorics  chemistry  code-golf  kolmogorov-complexity  source-layout  radiation-hardening  code-golf  ascii-art  path-finding  maze  code-golf  string  ascii-art  game  animation  code-golf  string  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  restricted-source  new-years 

4
一门小语言值得一口小口译员
这是一个非常简单的语言定义: A Variable is any string that does not contain ^, <, >, !, or ? The empty string is a valid variable identifier The value of every variable starts at 0. A Statement is one of (var is a Variable, P is a Program): var^ -> changes var to …

11
解释您的语言,但不能解释您自己?
说“解释X”有很多挑战,其中X是一种简单的语言。我认为这太无聊了。为了给互联网上所有拖延的人做一些有趣的事情,您可以尝试做以下挑战: 挑战 选择一种语言$LANG。$LANG可以是任何图灵完整的编程语言或图灵完整的子集。请注意,如果您在$LANG解释中忽略了语言的功能,则也不要在自己的程序中使用它,因为您的提交也必须用编写$LANG。 写一个编译器/解释器$LANG编写的$LANG。您可以使用eval可用于编写此编译器的所有语言功能(包括和朋友)。为了使任务更具挑战性,存在一个限制:您的程序应该能够解释/编译$LANG除解释器/编译器本身之外的所有有效程序。如果碰巧要解释/编译的程序是您的解释器或编译器本身(无论文件名如何),则您的程序应该执行与解释器或编译器的功能完全无关的操作(例如,打标或打印Hello, world!)。 为了使此任务更加复杂,您的程序在编译或解释时不得读取其自身的源代码。 技术指标 此任务是代码高尔夫。字符最少的提交是正确的。如果出现平局,则首先提交的解决方案将获胜。 您的程序/脚本应从文件读取要解释的程序。您可以硬编码其路径和名称。读取文件后,您可以将文件编译为另一个文件(该文件必须在您的系统上是可执行文件)或直接运行它。如果$LANG缺少文件读取功能,则可以选择另一种方式来读取适合的代码$LANG。您可能没有选择$LANG作为另一种语言的子集,但已删除了文件读取功能。 通常使用代码高尔夫球规则。那就是:如果解决方案使用它变得微不足道(例如定义一个完全实现该解决方案的单字符程序),那么为解决该挑战而编写的个人宠物语言将被禁止。鼓励滥用规则。

5
“抱歉,年轻人,但是乌龟一直都在降下来!”
执行Lindenmayer系统 甲Lindenmayer系统(或L-系统)是有关图厄和邮政系统和在用于植物的建模和分形产生。 L系统描述为 字符串重写,其中将来自符号字母的符号映射到符号的替换序列。这些映射的集合构成了L系统本身。 由Prusinkiewicz设计的图形输出方法解释了将映射应用于对象之后的结果序列。 初始序列指定次数的迭代,如Turtle-Drawing命令:向前,向后,向左,向右等。这可能需要额外的代码来控制图形的比例,因为不同的迭代次数可能会产生尺寸完全不同的图像。 您的任务是以最少的字符数执行L系统。您的程序必须能够通过提供适当的输入(文件,命令行,但请在源外部)来渲染Wikipedia页面上的Dragon Curve和Branching Stem。 这是代码高尔夫。 编辑:这是我在城镇周围张贴的一些示例。答案SO /旋转到北{ 那里我第一次发现了L系统 },回答SO /如何对程序-A-分,回答SO /递归功能于后记,comp.lang.postscript讨论/ recital,后记l系统集合,codegolf.SE / draw -a- sierpinski - triangle {我和thomasW之间竞争的起源}。

7
解释> <>(鱼)
虽然&gt; &lt;&gt;不是流行的语言,但它可能对打高尔夫球很有用,并且已在本网站上使用。它受到Befunge的启发,在指令上有一些相似之处。 所需命令: &gt; &lt; ^ v 更改指令指针的方向(右,左,上,下) / \ | _ # 。指针将根据其已有的方向改变方向。 x 随机方向。 + - * , % 加法,减法,乘法,除法和模。将A和B弹出堆栈,然后将B运算符A推入。除以0会引发错误。 0-9 a-f 将相应的值压入堆栈。a = 10,...,f = 15 = 从堆栈中弹出A和B,如果B = A,则按1,否则按0。 ) 比...更棒。将A和B弹出堆栈,如果B &lt;A ( 小于,则按1 。将A和B弹出堆栈,如果B&gt; A ' " 启用字符串解析,则按1 。字符串解析将找到的每个字符推入堆栈,直到找到结束引号为止。 ! 跳过以下说明。 ? 如果堆栈顶部为零或堆栈为空,则跳过以下指令。(注意:这不会从堆栈中弹出任何东西!) : 复制堆栈中的最高值。 …

14
这是一个截断的三角形数字吗?
相关OEIS序列:A008867 截断三角数 三角数的一个共同属性是它们可以排列成三角形。例如,取21并排列成os 的三角形: Ø OO oo oo oo oo 让我们定义一个“截断:”从每个角切割相同大小的三角形。截断21的一种方法如下: 。 。。 oo oo 。oo。 。。哦。。 (的三角形.是从原始三角形切出的)。 o剩下12 秒,因此12是一个截断的三角形数字。 任务 您的工作是编写一个程序或函数(或等效函数),该程序或函数采用整数并返回(或使用任何标准输出方法)数字是否为截断的三角形数字。 规则 没有标准漏洞。 输入是非负整数。 切口的边长不能超过原始三角形的一半(即,切口不能重叠) 切口的边长可以为零。 测试用例 真相: 0 1 3 6 7 10 12 15 18 19 虚假: 2 4 5 8 9 11 13 14 16 17 …
20 code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

27
为*写翻译
任务很简单。为*语言编写口译员。 这是Wiki的更大链接。 只有三个有效的*程序: * 打印“ Hello World” * 打印0到2,147,483,647之间的随机数 *+* 永远运行。 根据此问题的规范,第三种情况必须是无限循环 输入: 可以通过我们的标准I / O规则通过任何可接受的输入方法进行输入 它将永远是以上程序之一 输出: 第一种情况应打印准确Hello World,带有或不带有尾行。 对于第二种情况,如果您的语言的整数最大值小于2,147,483,647,请使用您的语言的整数最大值 根据我们的标准I / O规则,第一种情况和第二种情况可以打印到任何可接受的输出。 第三种情况不应给出任何输出。 得分: 因为这是代码高尔夫球,所以最短的答案(以字节为单位)获胜。
20 code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

11
最大化平方差
考虑从1到的整数值的置换N。例如此示例N = 4: [1, 3, 4, 2] 我们将认为此列表是循环的,因此1和2被视为相邻列表。我们可以为这样的列表计算的一个量是相邻值的总平方差: (1-3)² + (3-4)² + (4-2)² + (2-1)² = 10 给定正整数,您的任务是找到一个最大化此数量的排列N。在N = 4上面的例子中不是最佳的(实际上,这是最小的)。18通过以下排列(以及其他几个排列),我们可以实现的总平方差: [1, 4, 2, 3] 您的算法必须在(的N)多项式时间内运行。特别是,您不能简单地计算所有排列的总平方差。 您可以编写程序或函数,通过STDIN(或最接近的替代方案),命令行自变量或函数自变量获取输入,并通过STDOUT(或最接近的替代方案),函数返回值或函数(out)参数输出结果。 输出可以采用任何方便,明确,平坦的列表或字符串格式。您可以选择从与返回值的列表0,以N-1代替1向N。 适用标准代码高尔夫球规则。 测试数据 这个问题有一个很好的分析解决方案。例如,所有有效的解决方案N = 10均等效于以下列表(直至循环移位和反转): [7, 5, 6, 4, 8, 2, 10, 1, 9, 3] 我不想透露过多的信息(尽管足以找出模式),因此无需给出更多示例,您可以检查您的结果是否具有给定的总平方差N: N Total squared difference 1 0 2 …
19 code-golf  array-manipulation  permutations  restricted-complexity  code-golf  geometry  grid  code-golf  string  sorting  code-golf  simulation  code-golf  string  code-golf  arithmetic  code-golf  sorting  code-golf  string  code-golf  sorting  code-golf  interpreter  code-golf  number  kolmogorov-complexity  natural-language  conversion  code-golf  random  internet  code-golf  board-game  code-golf  number  sequence  code-golf  math  number  code-challenge  image-processing  classification  test-battery  code-golf  ascii-art  code-golf  tips  code-golf  arithmetic  code-golf  tips  code-golf  tips  javascript  code-golf  array-manipulation  code-golf  ascii-art  code-golf  string  binary  code-golf  arithmetic  linear-algebra  matrix  code-golf  sequence  code-golf  math  number  arithmetic  code-golf  primes  code-golf  math  code-golf  array-manipulation  counting  code-golf  arithmetic  code-golf  quine  code-generation  polyglot  code-golf  math  kolmogorov-complexity  trigonometry  code-golf  string  encryption 

5
少许泡菜
Python的pickle模块用于序列化,允许人们以一种可以以后重建的方式转储对象。为此,pickle使用了一种简单的基于堆栈的语言。 为简单起见,我们将处理这种语言的一小部分: ( Push a mark to the stack S'abc'\n Push a string to the stack (here with contents 'abc') l Pop everything up to the last mark, wrapping all but the mark in a list t Pop everything up to the last mark, wrapping all but the mark in …

10
创建编程语言解释器
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Code Golf Stack Exchange 的主题。 3年前关闭。 任务: 您必须创建一个可以解析编程语言摘要的解释器。该语言不必很复杂,但必须包含以下语法元素: 分配和读取变量的能力(可以很简单a- z是预制变量) If语句(不需要elseif和else) 循环(计数为任意数字,不需要用户访问计数器) 带有变量(加,减,乘,除,大于/小于,等于)的简单数学 打印报表 规则: 您不得复制其他流行语言的语法。 您需要编写自己的解释器,而无需修改其他解释器。 您可以使用任何语言编写口译员。 用您的语言编写一个99瓶啤酒的示例程序(请参阅此处) 这是一场人气竞赛,因此最受好评的答案胜出。

8
写一个脑力激荡的经典口译员!
Brain-Flak(Brainf ** k和Flak-Overstow之间的交叉)是一种基于堆栈的深奥语言。自发布此挑战以来,该语言已得到发展和更新,但是该语言的第一个修订版被称为“经典大脑”。 您必须编写一个程序或函数,该程序或函数需要一串Brain-Flak经典代码并对其进行评估。它还将使用(可能为空)整数列表。有Brain-Flak经典程序的输入。 语言 Brain-Flak具有两个堆栈,分别称为“左”和“右”。活动堆栈从左侧开始。如果弹出或查看一个空堆栈,它将返回0。没有变量。程序启动时,每个输入将按顺序推入活动堆栈(以便最后一个输入位于堆栈顶部)。 Brain-Flak程序中唯一有效的字符是()[]{}&lt;&gt;,并且必须始终保持平衡。如果有无效字符,或者括号不匹配,则会出现不确定的行为。任何有效的东西。 函数有两种类型:Nilads和Monads。一个nilad是一个函数,0参数。这是所有的尼拉德人: () +1。 [] -1。 {} 弹出活动堆栈。 &lt;&gt; 切换活动堆栈。 在评估它们时将它们串联在一起。因此,如果我们在活动堆栈的顶部有一个“ 3”,则此代码段: ()(){} 将评估到1 + 1 + active.pop()将评估为5。将&lt;&gt;评估为0。 单子组采用一个参数,即一大堆Brain-Flak代码。这是所有单子: (n) 在活动堆栈上按“ n”。 [n] 将'n'打印为int和换行符。 {foo}当active.peek()!= 0时,执行foo。评估为0¹。 &lt;foo&gt; 执行foo,但将其评估为0。 这些函数还将返回它们内部的值,因此 (()()()) 将推3和 [()()()] 将打印3但 [(()()())] 将打印并推送3。 当程序执行完毕后,活动堆栈上剩余的每个值都将打印为整数,并在其之间使用换行符。其他堆栈上的值将被忽略。 规则: 您的程序必须支持(-128,127)范围内的数字,并且堆栈大小至少为255。如果支持更大,则更好。 下溢/上溢未定义。 样本IO: 空程序: 输入:无 输出:无 加成。资源: …

6
总结?那是我的优势!
介绍 Forte是一种非常奇特的深奥语言,基于修改数字值的概念。在Forte中,数字不是常数而是变量,您可以使用LET指令为其分配新值。 例如,LET 2=4-1从现在开始执行后,2假设值为3,这意味着只要2表达式中的值出现,它就会由代替3。该表达式(1+1)*2现在将计算为9。 Forte中的此指令既用于存储信息,又用于流控制(对行进行编号,并通过更改其编号的值可以确定其执行顺序)。在这个挑战中,我们将不处理第二个方面。 挑战 您需要为Forte LET表达式的简化子集编写解释器。 您将收到以下遵循以下语法的输入行: &lt;line&gt;::= &lt;number&gt;=&lt;expression&gt; &lt;expression&gt;::= &lt;number&gt;|&lt;expression&gt;+&lt;number&gt; 注意:此语法无效,因为它缺少行号,LET和括号(它们始终是必需的) 也就是说,您只需要处理求和和为数字分配值。括号不会出现在输入中,并且每个表达式都需要从左到右求值:请注意部分结果会受到重新定义的影响! 数字将始终是非负整数,直到您的语言的本机整数类型的限制(或2 ^ 32,以较高者为准)。 对于每一行,您应该输出表达式的结果,并将该结果分配给第一个数字的(可能是重新分配的)值,这将影响如何解释以下各行。 这是代码高尔夫球,最短的代码(以字节为单位)获胜! 其他规定 输入格式是灵活的,例如,您可以采用带换行符的单个字符串,字符串列表,数字列表...输出也一样,只要清楚每个表达式中的结果是什么输入。 您可以提交要在REPL环境中运行的函数,完整程序或解决方案,每行调用一次。 禁止出现标准漏洞,特别是您不能在代码中调用外部Forte解释器。 例子 这些都是同一输入的一部分。在每行之后,显示相对于该行的预期输出,有时还会显示注释,指示相关的重新分配(不是必需输出的一部分)。 5=4 4 6=5 4 # 5 -&gt; 4 7=1+2+5 7 7=5+2+1 4 # Order of operations matters! 5+2 -&gt; 4+2 -&gt; 6 -&gt; 4 …

17
构建不存在的语言的解释器
为假的,基于堆栈的语言构建解释器,该解释器获取输入,解释输入并将结果输出为数字数组。它应该遍历每个字节并根据此表执行不同的功能: 0000(0):串联(将堆栈中的前两个数字组合起来,就好像它们是字符串一样。例如:12,5-&gt; 125) 0001(1):递增(在堆栈顶部的数字加1) 0010 (2):递减(从堆栈顶部的数字减去一个) 0011(3):乘以(堆栈的顶部两个数字相乘) 0100(4):除(将第二个到顶部的数字除以在堆栈顶部的数字) 添加(添加顶部的堆栈两个数字上):0101(5) 0110(6):减去(减去栈顶的数目从所述一个在其下方) 0111(7):指数(计算从小数到小数到大数的乘方) 1000(8):模数:(以小数为模,找到从小到大的数) 1001(9):向右旋转(将堆栈向下移动一格。底部的数字现在位于顶部) 1010(A):向左旋转(将堆栈向上移动一格。顶部的数字现在位于底部) 1011(B):复制(复制最上面的数字,以便它出现两次。例如:4,1变成4,1,1) 1100(C):双重复制(复制堆栈上的最上面的两个数字。ex :4, 1,2变成4,1,2,1,2) 1101(D):交换(交换堆栈中的前两个数字。例如:4,1,2变成4,2,1) 1110(E):双交换(交换最上面的两个数字,下面两个交换。例如:1,2,3,4,5变成1,4,5,2,3) 1111(F):删除/弹出(删除上面的数字堆栈) 例如,包含 1 1 BC 5 C 5 B 9 5-输入(十六进制) | | | | | | | | | | 1 2 2 2 4 4 6 6 2 …

3
查找字符串中的模式
在这种挑战下,您的任务是找到具有给定结构的子字符串。 输入项 您的输入应为两个非空的字母数字字符串,一个模式 p和一个text t。这个想法是,的每个字符都p代表一个连续的非空子字符串,t该子字符串彼此相邻出现,并p表示它们的串联。相同的字符对应于相同的子字符串。例如,模式aa代表任何非空正方形(通过将较短的字符串与其自身连接而获得的字符串)。因此,模式aa可以匹配子字符串byebye,并且每次a匹配bye。 输出量 如果文本t包含p匹配的子字符串,则您的输出应为该子字符串,并:在与的字符相对应的字符串之间插入冒号p。例如,如果我们有t = byebyenow和p = aa,那么bye:bye它是可接受的输出。匹配子字符串可能有多个选择,但是您只能输出其中之一。 如果t不包含匹配的子字符串,则您的输出将是悲伤的表情:(。 规则和说明 的不同字符p可以对应相同的子字符串,因此p = aba可以匹配字符串AAA。请注意,这些字符必须对应于非空字符串;特别是,如果p长于t,则输出必须为:(。 您可以编写完整的程序或函数,还可以更改两个输入的顺序。最低字节数获胜,并且不允许出现标准漏洞。 测试用例 以格式给出pattern text -&gt; output。注意,可能存在其他可接受的输出。 a Not -&gt; N aa Not -&gt; :( abcd Not -&gt; :( aaa rerere -&gt; re:re:re xx ABAAAB -&gt; A:A MMM ABABBAABBAABBA -&gt; ABBA:ABBA:ABBA x33x 10100110011001 -&gt; 10:1001:1001:10 …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

6
最小的字节码解释器/ VM
页首横幅-已通过JIT编译(越低越好) es1024-81.2分(包括有效的编译器!) 基思·兰德尔-116点 病-121点 页首横幅-解读(越低越好) 马丁·布特纳(MartinBüttner)-706654点(大约2个小时左右)。 ip割-30379点(97秒) 您的任务(如果您选择接受)是编写尽可能小的字节码解释器/ VM。VM /解释器使用以下指定的语言使用小型CISC架构(操作大小可能有所不同)。完成后,必须打印3个CPU寄存器的值,以证明打印了正确的输出(3,126,900,366)。 编译器 如果您想进行自己的测试,请在下面发布编译器。随时发布答案。 显示代码段 window.compile=function(){var e=$("#text").val().toLowerCase().match(/[^\r\n]+/g);var t=[];for(var n=0;n&lt;e.length;n++)compileLine(e[n],t);var r="";for(var n=0;n&lt;t.length;n++)if(typeof t[n]=="string")r+="\n";else r+="0x"+t[n].toString(16)+" ";$("#compiledArray").val(r)};window.compileLine=function(e,t){var n=e.split(" ");if(n[0]=="load"){t.push(0);t.push(getInt(n[1]));t.pushArr(getInt(n[2]))}if(n[0]=="rload"){t.push(1);t.push(getInt(n[1]));t.push(getInt(n[1]))}if(n[0]=="push"){t.push(2);t.push(getInt(n[1]))}if(n[0]=="pop"){t.push(3);t.push(getInt(n[1]))}if(n[0]=="add"){t.push(4);t.push(getInt(n[1]));t.push(getInt(n[2]))}if(n[0]=="sub"){t.push(5);t.push(getInt(n[1]));t.push(getInt(n[2]))}if(n[0]=="mul"){t.push(6);t.push(getInt(n[1]));t.push(getInt(n[2]))}if(n[0]=="div"){t.push(7);t.push(getInt(n[1]));t.push(getInt(n[2]))}if(n[0]=="jmp"){t.push(8);t.pushArr(getInt(n[1]))}if(n[0]=="cmp"){t.push(9);t.push(getInt(n[1]));t.push(getInt(n[2]))}if(n[0]=="branchlt"){t.push(10);t.pushArr(getInt(n[1]))}if(n[0]=="brancheq"){t.push(11);t.pushArr(getInt(n[1]))}if(n[0]=="branchgt"){t.push(12);t.pushArr(getInt(n[1]))}if(n[0]=="branchne"){t.push(13);t.pushArr(getInt(n[1]))}t.push("NEW LINE")};window.getInt=function(e){if(e.trim().startsWith("&lt;--"))return"COMMENT";if(e=="r0")return 0;if(e=="r1")return 1;if(e=="r2")return 2;if(e.startsWith("0x"))return parseInt(e,16);if(isNaN(parseInt(e)))alert(e);return getIntBytes(parseInt(e))};if(typeof String.prototype.startsWith!="function"){String.prototype.startsWith=function(e){return this.slice(0,e.length)==e}}Array.prototype.pushArr=function(e){this.push.apply(this,e)};window.getIntBytes=function(e){var t=[];var n=4;do{t[--n]=e&amp;255;e=e&gt;&gt;8}while(n);return t} &lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"&gt;&lt;/script&gt; &lt;textarea id="text" cols="40" rows="10"&gt;&lt;/textarea&gt; &lt;br/&gt; &lt;button onclick="compile()"&gt;Compile&lt;/button&gt; &lt;br/&gt; &lt;textarea id="compiledArray" cols="40" rows="10" readonly&gt;&lt;/textarea&gt; …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.