PEEK、POKE、ユーザ関数
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/05/15 06:29 UTC 版)
「MBASIC」の記事における「PEEK、POKE、ユーザ関数」の解説
1970年代後半から1980年代前半の8ビットコンピュータのBASICについての議論は、メモリへの直接読み書きのためのPEEKとPOKE(英語版)の重要性への言及が不可欠である。これらのシステムには通常、メモリ保護機能がなかったため、プログラマはOSの一部の通常の方法では利用できない機能にアクセスすることができた。これにより、ユーザプログラムによってシステムがハングアップする可能性も高くなった。例えば、CP/Mプログラマは、(システムBIOSが対応していれば)BASIC がコンソールデバイスをシリアルポートに切り替えるために POKE 関数を使用した。リアルタイムクロックを持つマシンでは、時刻を取得するためにPEEK命令を使用していた。 より複雑な操作のために、MBASICはBASICプログラムから呼び出すことができるユーザ定義の関数を仕様できるようにした。これは通常メモリの予約領域に配置されたり、一連の機械語コード(オペコード)として文字列定数にPOKEされたりする。また、MBASICには、8080のハードウェア入出力ポートに直接読み書きするINP命令とOUT命令もある。少なくともOsborne 1では、全てのI/O命令はシステムで使用するためにプリエンプションされていたが、この命令は周辺機器を制御するために使用することができる。 PEEKやPOKE、機械語のユーザ関数を利用したMBASICプログラムは、そのままでは異なる機種間の移植性がなかった。
※この「PEEK、POKE、ユーザ関数」の解説は、「MBASIC」の解説の一部です。
「PEEK、POKE、ユーザ関数」を含む「MBASIC」の記事については、「MBASIC」の概要を参照ください。
- PEEK、POKE、ユーザ関数のページへのリンク