/**
* COMET II 命令
- * 命令タイプは、オペランドにより6種類に分類
+ * 命令タイプは、オペランドにより5種類に分類
*/
typedef enum {
/**
- * オペランド数2または3。命令語長2
- * 第1オペランド: 汎用レジスタ
- * 第2オペランド: アドレス
- * 第3オペランド: 指標レジスタ
+ * オペランド数2または3
+ * - 第1オペランド: 汎用レジスタ。必須
+ * - 第2オペランド: アドレス。必須
+ * - 第3オペランド: 指標レジスタとして用いる汎用レジスタ。任意
*/
- R_ADR_X = 010,
+ R_ADR_X = 01,
/**
- * オペランド数2または3。。命令語長2
- * 第1オペランド: 汎用レジスタ
- * 第2オペランド: アドレスに格納されている内容
- * 第3オペランド: 指標レジスタ
+ * オペランド数2
+ * - 第1オペランド: 汎用レジスタ。必須
+ * - 第2オペランド: 汎用レジスタ。必須
*/
- R1_R2 = 020,
+ R1_R2 = 02,
/**
- * オペランド数1または2。命令語長1
- * 第1オペランド: アドレス
- * 第2オペランド: 指標レジスタ
+ * オペランド数1または2
+ * - 第1オペランド: アドレス。必須
+ * - 第2オペランド: 指標レジスタとして用いる汎用レジスタ。任意
*/
- ADR_X = 030,
+ ADR_X = 03,
/**
- * オペランド数1。命令語長1
- * 第1オペランド: 汎用レジスタ
+ * オペランド数1
+ * - 第1オペランド: 汎用レジスタ。必須
*/
- R_ = 040,
+ R_ = 04,
/**
- * オペランドなし。命令語長1
+ * オペランドなし
*/
- NONE = 0,
- /**
- * COMET II命令以外
- */
- NOTCMD = 077,
+ NONE = 00,
} CMDTYPE;
/**