RADIX 50 [1] [2] [3 ]またはRAD50 [ 3] ( RADIX50 [4] 、RADIX-50 [5]、RAD-50とも呼ばれる)は、デジタル・イクイップメント・コーポレーション(DEC)がDECsystem、PDP、およびVAXコンピュータで使用するために作成した大文字のみの文字エンコーディングである。
RADIX 50 の 40 文字のレパートリー ( 8 進数で 050 ) は、6 文字と 4 つの追加ビットを 1 つの36 ビットマシンワード( PDP-6、PDP-10 /DECsystem-10、DECSYSTEM-20 ) にエンコードしたり、3 文字と 2 つの追加ビットを 1 つの18 ビットワード ( PDP-9、[2] PDP-15 )、[6]にエンコードしたり、3 文字を 1 つの16 ビットワード ( PDP-11、VAX) にエンコードしたりできます。[3]
実際のエンコーディングは、36 ビット システムと 16 ビット システムで異なります。
36 ビット システム
36 ビット DEC システムでは、 40 文字のアルファベットから 6 文字のシンボル名をサポートするアセンブラまたはコンパイラのシンボル テーブルで RADIX 50 が一般的に使用されていました。これにより、シンボルのプロパティをエンコードするための 4 ビットが残りました。
IBMのSHAREオペレーティングシステムでオブジェクトコードシンボルを表すために使用されているSQUOZE文字エンコード方式との類似性から、DECの派生型はDEC Squozeと呼ばれることもありましたが、[7] IBM SQUOZEは50文字のアルファベットの6文字と2つの追加フラグビットを1つの36ビットワードにパックしました。[6]
RADIX 50 は、通常、36 ビット システムで通常の文字列をエンコードするためには使用されませんでした。ファイル名は通常、6 つの6 ビット文字としてエンコードされ、完全な ASCII 文字列は 5 つの 7 ビット文字と 36 ビット ワードあたり 1 つの未使用ビットとしてエンコードされました。
18ビットシステム
RADIX 50(Radix 50 8形式[2]とも呼ばれる)は、Digitalの18ビットPDP-9およびPDP-15コンピュータでシンボルテーブルにシンボルを格納するために使用され、18ビットワードあたり2つの余分なビット(「シンボル分類ビット」)を残しました。[2]
16ビットシステム
DECの16ビットシステムでは、一部の文字列は8ビットバイトとしてエンコードされ、他の文字列はRADIX 50(当時はMOD40とも呼ばれていた)を使用していました。[3] [8]
RADIX 50 では、文字列は必要に応じて連続する単語にエンコードされ、各単語内の最初の文字が最も重要な位置に配置されます。
たとえば、PDP-11エンコーディングを使用すると、文字値1、2、3、4、5、6を持つ文字列「ABCDEF」は、1×40 2 + 2×40 1 + 3×40 0 =という値を含む単語としてエンコードされます。1683、その後に2番目のワードが続き、その値は 4×40 2 + 5×40 1 + 6×40 0 =6606。したがって、16ビットワードは0(3つのスペース)から63 999(「999」)。単語の文字数が3文字未満の場合、文字列の最後の単語の末尾にスペースが埋め込まれます。[3]
このエンコーディングには、27、28、29のコードポイントの解釈が異なるいくつかの小さなバリエーションがありました。メディアに保存されたファイル名にRADIX 50が使用された場合、コードポイントは、、、$文字を表し、DIRなどのユーティリティでディレクトリを一覧表示すると、そのように表示されます。[9] PDP-11アセンブラやその他のPDP-11プログラミング言語で文字列をエンコードする場合、コードポイントは、、、文字を表し、グローバルマクロファイル内のデフォルトのRAD50マクロでそのようにエンコードされ、このエンコーディングはシンボルテーブルで使用されていました。RT -11オペレーティングシステムの初期のドキュメントでは、コードポイント29は未定義であるとされていました。[3]%*$.%
RADIX 50 の使用は、 Digital Equipment CorporationのPDP-11 オペレーティング システムで使用されるファイル名のサイズ規則の元でした。RADIX 50 エンコードを使用すると、ファイル名の 6 文字を 2 つの 16 ビット ワードに格納し、さらに 3 つの拡張子 (ファイル タイプ) 文字を 3 つ目の 16 ビット ワードに格納できます。同様に、「DL1」などの 3 文字のデバイス名も 16 ビット ワードに格納できます。ファイル名と拡張子を区切るピリオドと、デバイス名とファイル名を区切るコロンは暗黙的に存在していました (つまり、格納されず、常に存在するものと想定されていました)。
参照
参考文献
- ^ ab 「第 6 章: ローダー - シンボルの基数 50 表現」。PDP-6 マルチプログラミング システム マニュアル(PDF)。米国マサチューセッツ州メイナード: Digital Equipment Corporation (DEC)。1965 年。p. 57。DEC-6-0-EX-SYS-UM-IP-PRE00。2014年 7 月 14 日にオリジナルからアーカイブ(PDF)されました。2014年 7 月 10 日に取得。(1+84+10ページ)
- ^ abcd 「付録 1」。PDP-9 ユーティリティ プログラム - 高度なソフトウェア システム - プログラマーズ リファレンス マニュアル(PDF)。マサチューセッツ州メイナード、米国: Digital Equipment Corporation。1968年。注文番号 DEC-9A-GUAB-D。2020年 6 月 4 日のオリジナルからアーカイブ(PDF) 。2020年 6 月 4 日に取得。
- ^ abcdefg "8.10 .RAD50". PAL-11R アセンブラ - プログラマーズ マニュアル - ディスク オペレーティング システム用プログラム アセンブリ言語および再配置可能アセンブラ (第 2 版改訂)。マサチューセッツ州メイナード、米国: Digital Equipment Corporation。1971年 5 月 [1971 年 2 月]。p. 8-8。DEC-11-ASDB-D。2020年 6 月 18 日取得。p. 8-8:
[…]
PDP-11
システム プログラムは、多くの場合、RADIX 50 (この形式は MOD40 と呼ばれることもあります) と呼ばれる特別にコード化された形式でシンボルを処理します。この形式では、3 文字を 16 ビットにパックできるため、6 文字のシンボルを 2 ワードで保持できます。単一のオペランドは /CCC/ の形式で、スラッシュ (区切り文字) には = と : 以外の印刷可能な文字を使用できます。区切り文字は、変換する文字を囲みます。変換する文字は、A から Z、0 から 9、ドル記号 ($)、ドット (.)、およびスペース ( ) です。文字数が 3 文字未満の場合は、左揃えと見なされ、末尾にスペースがあるものとみなされます。[…] 圧縮アルゴリズムは次のとおりです。[…] A. 各文字は、次の表に示すように、RADIX 50 相当に変換されます。文字 - RADIX 50 相当 (8 進数): (スペース) - 0、A–Z - 1–32、$ - 33、. - 34、0–9 - 36–47。コード 35 には別の文字を定義できることに注意してください。[…] B. 文字 1 から 3 (C1、C2、C3) の RADIX 50 相当は、次のように結合されます。RESULT=((C1*50)+C2)*50+C3[…]
[1]
- ^ ab Durda IV., Frank (2004). 「RADIX50 文字コードリファレンス」。2005-03-31 にオリジナルからアーカイブ。2005-03-31に取得。
- ^ ab 「付録 B.3: Radix-50 定数と文字セット」。Compaq Fortran 77 言語リファレンス マニュアル。Compaq Computer Corporation。1999年。2012 年 10 月 14 日時点のオリジナルよりアーカイブ。2012年 10 月 14 日に取得。
- ^ ab Jones, Douglas W. (2018). 「講義 7、オブジェクト コード、ローダー、リンカー - マシン コードへの道の最終ステップ」。オペレーティング システム、2018 年春。CS:3620 オペレーティング システム コレクションの一部。アイオワ大学コンピューター サイエンス学部。2020年 6 月 6 日時点のオリジナルからアーカイブ。2020年 6 月 6 日に取得。
- ^ Murrell, Stephen J. (2005). 「DEC/PDP 文字コード」. rabbit.eng.miami.edu .マイアミ大学. DEC Squoze 文字表. 2020-06-19 のオリジナルからアーカイブ。 2020-06-19に取得。
- ^ PDP-11 Getting DOS on the Air (第1版)。マサチューセッツ州メイナード、米国:Digital Equipment Corporation。1971年8月。DEC-11-SYDC-D 。 2020年6月18日閲覧。[2]
- ^ 「RT11 Radix50 デモ」。
さらに読む
- Williams, Al (2016-11-22). 「Squoze your data」. Hackaday . 2020-06-06 にオリジナルからアーカイブ。2020-06-06に取得。
外部リンク
- https://github.com/turbo/ptt-its/blob/master/doc/info/midas.25
