コース: 試験対策:基本情報技術者試験 コンピュータシステム

今すぐコースを受講しましょう

今すぐ登録して、23,200件以上登録されている、業界エキスパート指導のコースを受講しましょう。

アセンブリ言語の命令を知る

アセンブリ言語の命令を知る

アセンブリ言語は機械語と 1対1に対応する命令をもつ プログラミング言語です。 アセンブリ言語の命令を知ることで コンピューターを操作する方法を 理解することができます。 コンピューターが直接理解できるのは 0と1の二進数で 表現された機械語で、 機械語は CPU の種類ごとに 用意されています。 今から 70 年ほど前に開発された 初期のコンピューターでは この機械語を使って プログラムを書いていました。 けれどもとても大変で 生産性が上がりません。 そのためまもなく アセンブリ言語と呼ばれる プログラミング言語が開発されました。 アセンブリ言語では加算する命令を アディションの略で ADD と書いたり 減算する命令を サブストラクションの略で SUB と書いたりし、 基本的に機械語の命令と 1対1に対応しています。 機械語は CPU ごとに 用意されているので、 アセンブリ言語も CPU ごとに仕様が異なります。 そしてアセンブラという 翻訳プログラムを使って CPU ごとの機械語に変換されます。 基本情報技術者試験で出題される アセンブリ言語は、 CASLⅡ というもので COMET Ⅱ という 仮想のコンピューター上で 動作することを前提としています。 コンピューターの命令には 主に以下のようなものがあります。 順番にこれらの命令の内容と CASLⅡ では どのように記述するのかを見てみましょう。 転送命令は 主記憶装置とレジスタ間、 あるいはレジスタ同士の間で データをやり取りする命令です。 CASTⅡ では 主記憶装置に記憶されている内容を 汎用レジスタに転送する LD、 汎用レジスタの内容を 主記憶装置に転送する ST、 アドレスの値を汎用レジスタへ転送する LAD があります。 算術演算命令は 主記憶装置やレジスタに 記憶されているデータの 加算や減算を行う命令です。 CASLⅡ では 符号つき加算を行う ADDA、 符号なし加算を行う ADDL、 符号つき減算を行う SUBA、 符号なし減算を行う SUBL があります。 論理演算命令は主記憶装置や レジスタに記憶されているデータの 論理演算を行う命令です。 CASLⅡでは、 論理積演算を行う AND、 論理和演算を行う OR、 排他的論理演算を行う EOR があります。 比較演算命令は…

目次