構文 .TYPE <式>
.TYPE 演算子は、<式>の種類を表す 8 ビット値を返します。<式>には任意の表現を指定できます。
.TYPE 演算子が返す値は、そのビットごとに意味をもっています。次にビットごとの意味を示します。
| ビット | このビットが 1 になる条件 |
| 0 | <式>にコードラベルがあるとき |
| 1 | <式>にデータラベルがあるとき |
| 2 | <式>が定数式であるとき |
| 3 | <式>にデータラベルがありインデクス/ベースレジスタがないとき |
| 4 | <式>がレジスタ式であるとき |
| 5 | <式>に未定義ラベルがないとき |
| 6 | 常に 0 |
| 7 | <式>に外部参照ラベルがあるとき |
.TYPE 演算子は、条件アセンブルの条件判定に使用することが普通です。
適用可能な式
.TYPE 演算子は、どのような式にでも適用可能です。
例
G GROUP S
S SEGMENT
LC LABEL NEAR
LD LABEL BYTE
EXTRN E:NEAR
MI EQU 1
ML EQU LC
DB .TYPE LC ; 00100001b = 21h アドレス(コード)
DB .TYPE LD ; 00101010b = 2Ah アドレス
DB .TYPE LD[SI] ; 00100010b = 22h インデクスアドレス
DB .TYPE E ; 10100001b = A1h 外部参照アドレス
DB .TYPE AX ; 00110000b = 30h レジスタ
DB .TYPE 10 ; 00100100b = 24h 定数
DB .TYPE MI ; 00100100b = 24h 定数
DB .TYPE ML ; 00100001b = 21h アドレス(コード)
DB .TYPE DUMMY ; 00000000b = 00h 未定義名
DB .TYPE S ; 00100000b = 20h セグメント
DB .TYPE G ; 00100000b = 20h グループ
S ENDS