masterブランチをマージ
[YACASL2.git] / doc / yacasl2.texi
1 \input texinfo   @c -*-texinfo-*-
2 @c %**start of header
3 @setfilename yacasl2
4 @settitle YACASL2 -Linux上のCASL2処理系-
5 @c %**end of header
6
7 @copying
8 Copyright @copyright{} 2010 j8takagi
9 @end copying
10
11 @titlepage
12 @title
13
14 @c The following two commands start the copyright page.
15 @page
16 @vskip 0pt plus 1filll
17 @insertcopying
18 @end titlepage
19
20 @c Output the table of contents at the beginning.
21 @contents
22
23 @insertcopying
24
25 @chapter YACASL2の概要
26
27 @cindex chapter, first
28
29 YACASL2は、Linux上で動作するオープンソースのCASL II処理系です。CASL IIは情報処理試験で用いられるアセンブラ言語で、次の資料により仕様が公開されています。
30
31 @quotation
32 @uref{http://www.jitec.ipa.go.jp/1_00topic/topic_20081027_hani_yougo.pdf, 試験で使用する情報処理用語・プログラム言語など(2008年10月版)}[PDFファイル]
33 別紙 1 アセンブラ言語の仕様
34 @end quotation
35
36 YACASL2は、CASL IIアセンブラ言語で記述されたファイルをアセンブルし、仮想マシンCOMET II上で実行します。アセンブルと実行は、連続で行うことも別々に行うことも可能です。
37 YACASL2の動作はCASL IIの仕様に準拠しているため、情報処理試験の問題をはじめ各種参考書やサイトに記載されたCASL IIのプログラムをそのままアセンブルして実行できます。また、本パッケージ中にCASL IIのサンプルプログラムが多数収録されています。
38
39 YACASL2は、「ふつうの処理系」として動作します。ほかの多くのCASL IIエミュレーターと違い、デバッガーとして動作したり、コンピューター内部の模式図を表示したりすることはありません。そのかわり、YACASL2は、次のような動作内容をすべてテキストで出力します。
40
41 @itemize @bullet
42
43 @item
44 ラベルとアドレスの対応
45
46 @item
47 アセンブラ結果
48
49 @item
50 実行時のレジスタの内容
51
52 @item
53 実行時のメモリの内容
54 @end itemize
55
56 出力された動作内容は、GNU/Linuxのさまざまなツール、たとえば@command{head}、@command{tail}、@command{grep}、@command{diff}などを使って解析できます。
57
58 @chapter YACASL2のインストール
59
60 YACASL2をインストールするには、Linux上で次の作業が必要です。
61
62 @enumerate
63
64 @item
65 @file{yacasl2.tar.gz}のダウンロード
66
67 @item
68 @file{yacasl2.tar.gz}の展開
69
70 @item
71 @command{casl2}、@command{comet2}、@command{dumpword}のビルド
72
73 @item
74 レグレッションテスト
75 @end enumerate
76
77 @unnumberedsec 要件
78 YACASL2は、Linux上で動作します。インストール時に、@command{tar}、@command{gcc}、@command{make}が必要です。
79
80 現在動作を確認しているのは、次のディストリビューションです。
81
82 @itemize @bullet
83
84 @item
85 Ubuntu Linux 9.04
86
87 @item
88 Ubuntu Linux 8.04
89
90 @item
91 Vine Linux 4.2
92 @end itemize
93
94 @section @file{yacasl2.tar.gz}のダウンロード
95
96 @verbatim
97 $ cd
98 $ wget
99 @end verbatim
100
101 @section @file{yacasl2.tar.gz}の展開
102
103 @verbatim
104 $ tar xvzf yacasl2.tar.gz
105 @end verbatim
106
107 @section @command{casl2}、@command{comet2}、@command{dumpword}のビルド
108
109 @verbatim
110 $ cd yacasl2
111 $ make
112 @end verbatim
113
114 @section レグレッションテスト
115
116 @verbatim
117 $ make check
118 @end verbatim
119
120 @bye