(Translated by https://www.hiragana.jp/)
PL/M - Wikipedia コンテンツにスキップ

PL/M

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』
PL/M
登場とうじょう時期じき 1973ねん (1973)[1][2]
開発かいはつしゃ デジタルリサーチゲイリー・キルドール[3]
影響えいきょうけた言語げんご ALGOL, PL/I, XPL英語えいごばん
テンプレートを表示ひょうじ

PL/M(Programming Language for Microcomputers頭文字かしらもじ[1][2])はゲイリー・キルドール[1][2][4][3]が1972ねん[1][2]設計せっけい開発かいはつした高水準こうすいじゅんプログラミング言語げんごで、インテルはたらハンク・スミス[1][2]マイクロプロセッサ英語えいごばんのために開発かいはつされた。

PL/IALGOLXPL英語えいごばん参考さんこう[1][2]しており、マクロ処理しょり機能きのうがあった。キルドールはワシントン大学だいがく在学ざいがくちゅうB5500使用しようしており[1]ESPOL英語えいごばんのような高水準こうすいじゅん言語げんごもちいたシステムプログラミングにたか可能かのうせいがあることをった。

Pascal、C、BASICなどのような現代げんだい言語げんごとはことなり、PL/Mには標準ひょうじゅん入出力にゅうしゅつりょく機能きのうがなかった。マイクロプロセッサのような非常ひじょう限定げんていされた環境かんきょうでのプログラミングをターゲットにしており、メモリ、I/O、みなどにたいして非常ひじょう効率こうりつよく直接的ちょくせつてきにアクセスできるよう設計せっけいされた。PL/Mはマイクロプロセッサをもちいたコンピュータで動作どうさする最初さいしょ言語げんごで、CP/M初期しょきバージョンはアセンブラではなくこの言語げんごもちいて実装じっそうされた。1970年代ねんだいから1980年代ねんだいにかけ、インテルやザイログZ80のみシステムでPL/Mが使用しようされた。たとえばCISC AS/400のサービスプロセッサのファームウェアはPL/Mで記述きじゅつされた。

オリジナルのPL/MコンパイラIntel 8008対応たいおうしていた。アップデートばん8080対応たいおうし、あたらしいIntel 8085でも動作どうさしたほか、8080の上位じょうい互換ごかんであるZilog Z80でも動作どうさした。そのIntel 8048Intel 8051対応たいおうし、8086 (8088)80186 (80188)などの8086系列けいれつ対応たいおうして、80286や32ビットの80386にも対応たいおうした。またPL/MコンパイラはIntel 8061英語えいごばんや8096/MCS-96英語えいごばんひとし系列けいれつのプロセッサにも対応たいおうした。

PL/MコンパイラはIntel ISIS英語えいごばんなどのOSでもCPUがおなじであれば動作どうさする「ネイティブ」設計せっけいである一方いっぽうで、CP/MやマイクロソフトのMS-DOSやDECのVAX/VMSなどで動作どうさするPLMXというクロスコンパイラもあった。

インテルは90年代ねんだい以降いこうPL/Mをサポートしていないが、PL/M-to-Cトランスレーターなどの社外しゃがいツールが存在そんざいしている(下記かき外部がいぶリンク参照さんしょう)。

PL/M sample code[編集へんしゅう]

 FIND: PROCEDURE(PA,PB) BYTE;
    DECLARE (PA,PB) BYTE;
    /* 文字もじれつSCRATCHからPAではじまりPBでわる文字もじれつさがす */
    DECLARE J ADDRESS,
        (K, MATCH) BYTE;
    J = BACK ;
    MATCH = FALSE;
        DO WHILE NOT MATCH AND (MAXM > J);
        LAST,J = J + 1; /* Jから検索けんさく開始かいし */
        K = PA ; /* 文字もじれつがKで一致いっちするか */
            DO WHILE SCRATCH(K) = MEMORY(LAST) AND
                NOT (MATCH := K = PB);
            /* さらに1文字もじ一致いっち */
            K = K + 1; LAST = LAST + 1;
            END;
        END;
    IF MATCH THEN /* 格納かくのうさき移動いどう */
        DO; LAST = LAST - 1; CALL MOVER;
        END;
    RETURN MATCH;
    END FIND;

脚注きゃくちゅう[編集へんしゅう]

  1. ^ a b c d e f In His Own Words: Gary Kildall”. Remarkable People. Computer History Museum (2016ねん8がつ2にち). 2019ねん12月21にち閲覧えつらん
  2. ^ a b c d e f Computer Connections: People, Places, and Events in the Evolution of the Personal Computer Industry. Kildall Family. (2016-08-02). http://www.computerhistory.org/atchm/computer-history-museum-license-agreement-for-the-kildall-manuscript/ 2016ねん11月17にち閲覧えつらん. 
  3. ^ a b “Gary Kildall and Collegial Entrepreneurship”. Dr. Dobb's Journal. (2001-06-22). http://www.ddj.com/184410428 2006ねん11月20にち閲覧えつらん. 
  4. ^ ISIS, Intellec, PL/M and Intel

参考さんこう文献ぶんけん[編集へんしゅう]

  • Intel Corporation (1976). PL/M-80 Programming Manual. Doc # 98-268B.
  • McCracken, Daniel D. (1978). A Guide to PL/M Programming for Microcomputer Applications. Pearson Addison-Wesley.

外部がいぶリンク[編集へんしゅう]

この記事きじは2008ねん11月1にち以前いぜんFree On-line Dictionary of Computingから取得しゅとくした項目こうもく資料しりょうもとに、GFDL バージョン1.3以降いこうの「RELICENSING」(さいライセンス) 条件じょうけんもとづいてまれている。