回答受付が終了しました

ID非公開

2022/1/15 21:18

44回答

16ビットマシンがあったとして、

Linux系 | OS128閲覧xmlns="http://www.w3.org/2000/svg">100

回答(4件)

0

マシン語の命令も16bitを1ワードで表現しますが、命令が必ずしも1ワードとは限りません。 2ワード3ワードの命令があるCPUもあります。

0

分割しなくても扱えます。その例をひとつあげてみます。 基本情報技術者試験の選択科目にアセンブリ言語CASL2があり、そこで想定されているコンピュータはCOMET2で、16ビットの仮想マシンです。16ビットのデータは、分割せずにそのままデータで加算、減算、その他の演算を行うことができます。たとえば、10000と20000を加算するプログラムを書いてみます。 MATH START LD GR1,AA LD GR2,BB ADDA GR1,GR2 ;加算する ST GR1,ANS ;答えをANSに格納する RET AA DC 10000 BB DC 20000 CC DS 1 END データ分割の操作をしていないのがわかると思います。 CASL2の学習用アセンブラ、シュミレータがたくさん公開 http://www.vector.co.jp/vpack/filearea/win/prog/casl/ されていますから、上のプログラムを実行してみると、CPUやメモリの内容が丸見えの状態なので、そうだとはっきりと納得できると思います。 では最後に、どうして、あなたは、「16ビットマシンの16ビットのデータ型は分割して扱う必要があるかもしれない」と考えたのでしょうか?

ID非公開

質問者2022/1/16 13:48

例えば何か数値を変数に代入したい時、 数値部分だけで16ビット使ってしまうわけで、 少なくとも命令部の場所がなくなってしまうので、代入操作ができないのではないかと思いまして

0

16ビットデータをそのまま扱えないなら、16ビットマシンとは呼べない

ID非公開

質問者2022/1/16 1:26

代入などはどうするのですか? 16ビットのデータ型を一気に扱えないのでは?