ilasmでstack machine その8
1306 ワード
概要
ilasmでstack machineやってみた。
俺言語、コンパイラを作ってみた。
三段階の一段目を作ってみた。
ソースコード
10 a=0
20 a=a+1
30 #=a>100*255
40 b=a%15
50 #=b=0*120
60 b=a%5
70 #=b=0*140
80 b=a%3
90 #=b=0*160
100 ?=a
110 #=20
120 ?="fizzbuzz "
130 #=20
140 ?="buzz "
150 #=20
160 ?="fizz "
170 #=20
出力結果
pushi 0
set a
label_20:
get a
pushi 1
+
set a
get a
pushi 100
if< label_255
get a
pushi 15
%
if label_120
get a
pushi 5
%
if label_140
get a
pushi 3
%
if label_160
get a
call printi
jp label_20
label_120:
push "fizzbuzz "
call prints
jp label_20
label_140:
push "buzz "
call prints
jp label_20
label_160:
push "fizz "
call prints
jp label_20
label_255:
ret
成果物
10 a=0
20 a=a+1
30 #=a>100*255
40 b=a%15
50 #=b=0*120
60 b=a%5
70 #=b=0*140
80 b=a%3
90 #=b=0*160
100 ?=a
110 #=20
120 ?="fizzbuzz "
130 #=20
140 ?="buzz "
150 #=20
160 ?="fizz "
170 #=20
pushi 0
set a
label_20:
get a
pushi 1
+
set a
get a
pushi 100
if< label_255
get a
pushi 15
%
if label_120
get a
pushi 5
%
if label_140
get a
pushi 3
%
if label_160
get a
call printi
jp label_20
label_120:
push "fizzbuzz "
call prints
jp label_20
label_140:
push "buzz "
call prints
jp label_20
label_160:
push "fizz "
call prints
jp label_20
label_255:
ret
成果物
以上。
Author And Source
この問題について(ilasmでstack machine その8), 我々は、より多くの情報をここで見つけました https://qiita.com/ohisama@github/items/fd7e7e2c570873cad9fc著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .