a21_txt01_2a
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
* [[a21_txt01_2]]の補足説明#1
-(by [[K]], 2021.01.21)
** (0)
-これは[[「川合のプログラミング言語自作のためのテキスト第...
** (1) lexer()は結局何をしているのか?
-lexer()は、プログラムのソースコードを単語(トークン)に...
-でもそんなことを言われてもピンとこないかもしれません。
-以下の入力を与えたらどうなるかやってみましょう。
abc = 123;
def = 456;
ans = abc + def;
ans = ans - 321;
print ans;
-これをloadText()で読み込んで、lexer()で切り分けた後に、
for (i = 0; i < pc1; i++) {
printf("%d %s\n", tc[i], ts[tc[i]]);
}
-というプログラムで表示させたら、何が出力されるかを示しま...
0 abc
1 =
2 123
3 ;
4 def
1 =
5 456
3 ;
6 ans
1 =
0 abc
7 +
4 def
3 ;
6 ans
1 =
6 ans
8 -
9 321
3 ;
10 print
6 ans
3 ;
-こうなります。つまり改行とかスペースはなくなり、とにかく...
-同じ単語には同じ番号が必ず割り当てられます。
* こめんと欄
#comment
終了行:
* [[a21_txt01_2]]の補足説明#1
-(by [[K]], 2021.01.21)
** (0)
-これは[[「川合のプログラミング言語自作のためのテキスト第...
** (1) lexer()は結局何をしているのか?
-lexer()は、プログラムのソースコードを単語(トークン)に...
-でもそんなことを言われてもピンとこないかもしれません。
-以下の入力を与えたらどうなるかやってみましょう。
abc = 123;
def = 456;
ans = abc + def;
ans = ans - 321;
print ans;
-これをloadText()で読み込んで、lexer()で切り分けた後に、
for (i = 0; i < pc1; i++) {
printf("%d %s\n", tc[i], ts[tc[i]]);
}
-というプログラムで表示させたら、何が出力されるかを示しま...
0 abc
1 =
2 123
3 ;
4 def
1 =
5 456
3 ;
6 ans
1 =
0 abc
7 +
4 def
3 ;
6 ans
1 =
6 ans
8 -
9 321
3 ;
10 print
6 ans
3 ;
-こうなります。つまり改行とかスペースはなくなり、とにかく...
-同じ単語には同じ番号が必ず割り当てられます。
* こめんと欄
#comment
ページ名: