プログラムステータスワード

プログラム・ステータス・ワード[a] ( PSW ) は、ステータス・レジスタプログラム・カウンタの機能、場合によってはそれ以上の機能を果たすレジスタです。この用語は、ストレージ内のPSWのコピーにも適用されます。この記事では、IBM System/360 [1]およびその後継機種[2] [3] [4 ] [5] [6]のPSWについてのみ説明し、左端(最上位)ビットを0としてビット番号を付けるIBMの規則に従います。

PSW 内の特定のフィールドは非特権命令を使用してテストまたは設定できますが、残りのフィールドのテストまたは設定は特権命令を使用してのみ実行できます。

PSWには、ゼロ、正、負、オーバーフロー、および他のアーキテクチャのステータスレジスタの同様のフラグを表す2ビットの条件コードが含まれています。条件分岐命令は、この4ビット値としてエンコードされた条件コードをテストします。各ビットは、2 3 + 2 2 + 2 1 + 2 0の4つの条件コード値のいずれかのテストを表します。(IBMはビッグエンディアンのビット番号付けを使用しているため、マスク値8はコード0、マスク値4はコード1、マスク値2はコード2、マスク値1はコード3を選択します。)

64ビットPSWは(とりわけ)以下を記述します。

アーキテクチャの初期のインスタンス (System/360 および初期の System/370) では、命令アドレスは 24 [b]ビットでした。後期のインスタンス (XA/370) では、命令アドレスは 31 ビット + モード ビット (0 の場合は 24 ビット アドレッシング モード、1 の場合は 31 ビット アドレッシング モード) で、合計 32 ビットでした。

現在のアーキテクチャ ( z/Architecture ) のインスタンスでは、命令アドレスは 64 ビット、PSW 自体は 128 ビットです。

PSWはLOAD PSW命令(LPSWまたはLPSWE)によってロードできます。PSWの内容は、Extract PSW命令(EPSW)によって調べることができます。

形式

S/360

360/20を除くすべての機種において[c] PSWは以下の形式を持ちます。S/360拡張PSW形式は、制御レジスタ6のビット8がセットされた360/67にのみ適用されます。

IBM S/360 PSW フォーマット
S/360標準PSW [11]

システムマスクMWP割り込みコード[12]
07811121314151631

ILCCCプログラム
マスク
命令アドレス
3233343536394063
S/360 標準 PSW 略語
ビット分野意味
0-7SM
システムマスク
少し意味
0チャネル0マスク
1チャンネル1マスク
2チャンネル2マスク
3チャンネル3マスク
4チャンネル4マスク
5チャンネル5マスク
6チャンネル6マスク
7外部マスク
8-11PSWキー
12アスキー
13M機械検査用マスク
14W待機状態
15P問題の状態
16-31IC割り込みコード[13]
32-33ILC命令長コード[14]
34-35CC条件コード
36~39首相
プログラムマスク
少し意味
36固定小数点オーバーフロー
37小数オーバーフロー
38指数アンダーフロー
39意義
40~63歳IA命令アドレス
S/360拡張PSW [15]

スペア24/32
ビット
モード
トランジション
コントロール
I/O
マスク
外部
マスク
MWPILCCCプログラム
マスク
スペア
034567811121314151617181920232431

命令アドレス
3263
S/360 拡張 PSW 略語
ビット分野意味
0-3スペア(0である必要があります)
424/32ビットアドレスモード
5翻訳制御
6IOI/Oマスク(概要)
7外部マスク(概要)
8-11保護キー
12アスキー
13M機械検査用マスク
14W待機状態
15P問題の状態
16-17ILC命令長コード[16]
18-19CC条件コード
20-23首相
プログラムマスク
少し意味
20固定小数点オーバーフロー
21小数オーバーフロー
22指数アンダーフロー
23意義
24-31スペア
32-63IA命令アドレス

S/370

IBM S/370 PSW フォーマット
S/370基本制御モードPSW [17]

チャン・
マスク

O

0MWP割り込みコード
0124567811121314151631

ILCCCプログラム
マスク
命令アドレス
3233343536394063
S/370 BCモードPSW略語
ビット分野意味
0-5チャネル0~5のチャネルマスク
6IOチャネル5以上のI/Oマスク
7外部マスク
8-11PSWキー
12E=0基本制御モード
13M機械検査用マスク
14W待機状態
15P問題の状態
16-31IC割り込みコード[18]
32-33ILC命令長コード[19]
34-35CC条件コード
36~39首相
プログラムマスク
少し意味
36固定小数点オーバーフロー
37小数オーバーフロー
38指数アンダーフロー
39意義
40~63歳IA命令アドレス
S/370拡張制御モードPSW [20]

0R000T
O

1MWPS0CCプログラム
マスク
00000000
0124567811121314151617181920232431

00000000命令アドレス
32394063
S/370 ECモードPSW略語
ビット分野意味
1Rマスク1枚あたり
5TDATモード
6IOI/Oマスク; CR2のチャネルマスクに従う
7外部マスク; CR0の外部サブクラスマスクの対象
8-11PSWキー
12E=1拡張制御モード
13M機械検査用マスク
14W待機状態
15P問題の状態
16Sアドレス空間制御
0=プライマリ空間モード
1=セカンダリ空間モード
18-19CC条件コード
20-23首相
プログラムマスク
少し意味
20固定小数点オーバーフロー
21小数オーバーフロー
22指数アンダーフロー
23意義
40~63歳IA命令アドレス

S/370 拡張アーキテクチャ (S/370-XA)

IBM 拡張アーキテクチャ (XA) PSW 形式
拡張アーキテクチャ拡張制御モードPSW [21]

0R000T
O

1MWPS0CCプログラム
マスク
00000000
0124567811121314151617181920232431

命令アドレス
323363
S/370-XA ECモードPSW略語
ビット分野意味
1Rマスク1枚あたり
5TDATモード
6IOI/Oマスク; CR2のチャネルマスクに従う
7外部マスク; CR0の外部サブクラスマスクの対象
8-11PSWキー
12E=1拡張制御モード
13M機械検査用マスク
14W待機状態
15P問題の状態
16Sアドレス空間制御
0=プライマリ空間モード
1=セカンダリ空間モード
18-19CC条件コード
20-23首相
プログラムマスク
少し意味
20固定小数点オーバーフロー
21小数オーバーフロー
22指数アンダーフロー
23意義
32アドレッシングモード
0=24ビット; 1=31ビット
33-63IA命令アドレス

エンタープライズ システム アーキテクチャ (ESA)

IBM エンタープライズ システム アーキテクチャー (ESA) PSW 形式
エンタープライズシステムアーキテクチャ拡張制御モードPSW [ 22 ] [23]

0R000T
O

1MWPとしてCCプログラム
マスク
00000000
0124567811121314151617181920232431

命令アドレス
323363
ESA ECモードPSW略語
ビット分野意味
1Rマスク1枚あたり
5TDATモード
6IOI/Oマスク; CR2のチャネルマスクに従う
7外部マスク; CR0の外部サブクラスマスクの対象
8-11PSWキー
12E=1拡張制御モード
13M機械検査用マスク
14W待機状態
15P問題の状態
16-17としてアドレス空間制御
00=プライマリ空間モード
01=アクセスレジスタモード
10=セカンダリ空間モード
11=ホーム空間モード
18-19CC条件コード
20-23首相
プログラムマスク
少し意味
20固定小数点オーバーフロー
21小数オーバーフロー
22指数アンダーフロー[d]
23意義[e]
32アドレッシングモード
0=24ビット; 1=31ビット
33-63IA命令アドレス

z/アーキテクチャ

IBM z/Architecture PSW フォーマット
z/Architecture ロングPSW [24]

0R000T
O

0MWPとしてCCプログラム
マスク
R
I
000000EA
012456781112131415161718192023243031

B
A
0
323363

命令アドレス
6495

命令アドレス(続き)
96127
長いPSW略語
ビット分野意味
1Rマスク1枚あたり
5TDATモード
6IOI/Oマスク
7外部マスク
8-11PSWキー
12E=0LPSWEの場合はゼロでなければなりません
13M機械検査用マスク
14W待機状態
15P問題の状態
16-17としてアドレス空間制御
00=プライマリ空間モード
01=アクセスレジスタモード
10=セカンダリ空間モード
11=ホーム空間モード
18-19CC条件コード
20-23首相
プログラムマスク
少し意味
20固定小数点オーバーフロー
21小数オーバーフロー
22HFP指数アンダーフロー
23HFPの重要性
24RIIBM専用
31EA拡張アドレス指定モード
0 = 下記の BA で定義; 1 = 64 ビット、BA は 0 でなければならない
32学士基本アドレス指定モード
0=24または64; 1=31
64-127IA命令アドレス
z/ArchitectureショートPSW [25]

0R000T
O

1MWPとしてCCプログラム
マスク
R
I
000000EA
01245678111213141516171819202324253031

B
A
命令アドレス
323363
PSWの略語
ビット分野意味
1Rマスク1枚あたり
5TDATモード
6IOI/Oマスク
7外部マスク
8-11PSWキー
12E=1LPSWの場合は1つである必要があります
13M機械検査用マスク
14W待機状態
15P問題の状態
16-17としてアドレス空間制御
00=プライマリ空間モード
01=アクセスレジスタモード
10=セカンダリ空間モード
11=ホーム空間モード
18-19CC条件コード
20-23首相
プログラムマスク
少し意味
20固定小数点オーバーフロー
21小数オーバーフロー
22HFP指数アンダーフロー
23HFPの重要性
24RIIBM専用
31EA拡張アドレス指定モード
0 = 下記の BA で定義; 1 = 64 ビット、BA は 0 でなければならない
32学士基本アドレス指定モード
0=24または64; 1=31
33-63IA命令アドレス

注記

  1. ^ 命名法はアーキテクチャによって異なります。
  2. ^ しかし、拡張動的アドレス変換[8] 機能を備えた360/67 [7]では、拡張PSWモード[8](制御レジスタ6、ビット8 [10] )のPSW [9]のビット4によって32ビットモードが選択されます。
  3. ^ 名前にもかかわらず、350/20 は S/360 アーキテクチャに準拠していません。
  4. ^ ESA/390ではビット22はHFP指数アンダーフローとして名前が変更されました。
  5. ^ ビット23はESA/390ではHFP重要度として名前が変更されました

参考文献

  1. ^ S360.
  2. ^ S370.
  3. ^ S370-XA。
  4. ^ S370-ESA。
  5. ^ S390-ESA。
  6. ^ z.
  7. ^ 関数67。
  8. ^ ab func67、p. 57、用語集。
  9. ^ func67、p. 15、命令のフェッチと実行。
  10. ^ func67、p. 16、表4. 制御レジスタ。
  11. ^ S360、p. 15、プログラムステータスワード。
  12. ^ S360、pp.15-16、中断。
  13. ^ S370、pp.15-16、中断。
  14. ^ S370、p. 156、命令長コード。
  15. ^ func67、pp. 15–16、命令フェッチと実行。
  16. ^ S360、p. 156、命令長コード。
  17. ^ S370、pp. 4-8 – 、4–9、BCモードでのプログラムステータスワード形式。
  18. ^ S370、pp. 6-3 – 、6–5、中断アクション。
  19. ^ S370、pp. 6-7 – 、6–9、命令長コード。
  20. ^ S370、pp. 4-6 – 、4–7、ECモードでのプログラムステータスワード形式。
  21. ^ S370-XA、p. 4-5、プログラムステータスワード形式。
  22. ^ S370-ESA、p. 4-5、プログラムステータスワード形式。
  23. ^ S390-ESA、p. 4-5、プログラムステータスワード形式。
  24. ^ z、pp. 4-5–4-8、プログラムステータスワード形式。
  25. ^ z、p. 4-8、短縮PSWフォーマット。
S360
IBM System/360 動作原理(PDF) (第8版)。IBM。1968年9月。A22-6821-7。
関数67
IBM System/360 モデル67 機能特性(PDF) (第3版). IBM. 1972年2月. GA27-2719-2.
S370
IBM System/370 動作原理(PDF) (第11版). IBM. 1987年9月. A22-7000-10.
S370-XA
IBM System/370 拡張アーキテクチャの動作原理(PDF) (第2版)。IBM。1987年1月。SA22-7085-1。
S370-ESA
IBM Enterprise Systems Architecture/370 Principles of Operation (PDF) (初版). IBM. 1988年8月. SA22-7200-0.
z
z/Architecture 動作原理(PDF) (第14版). IBM. 2022年5月. SA22-7832-13.
「https://en.wikipedia.org/w/index.php?title=Program_status_word&oldid=1311766804」より取得