マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

死亡フラグ

全てはこれが物語っている→ http://favotter.net/status.php?id=12562641776
…はい、無謀ですね…でもやるだけやります…
とりあえず今まで実装した命令を載せておく


04 ib ADD AL, imm8 imm8 を AL に加算する。
05 iw ADD AX, imm16 imm16 を AX に加算する。
31 /r XOR r/m16, r16 r/m16 と r16 との XOR をとる。
3C ib CMP AL, imm8 imm8 を AL と比較する。
75 cb JNE rel8 等しくない(ZF=0)場合 short ジャンプする。
80 /4 ib AND r/m8, imm8 r/m8 と imm8 との AND をとる。
80 /5 ib SUB r/m8, imm8 r/m8 から imm8 を引く。
81 /0 iw ADD r/m16, imm16 imm16 を r/m16 に加算する。
81 /7 iw CMP r/m16, imm16 imm16 を r/m16 と比較する。
88 /r MOV r/m8, r8 r8 を r/m8 に転送する。
89 /r MOV r/m16, r16 r16 を r/m16 に転送する。
8C /r MOV r/m16, Sreg** セグメント・レジスタを r/m16 に転送する。
8E /r MOV Sreg, r/m16** r/m16 をセグメント・レジスタに転送する。
B0+ rb MOV r8, imm8 imm8 を r8 に転送する。(0、1、4、5、6実装)
B8+ rw MOV r16, imm16 imm16 を r16 に転送する。(8、9、A、B、C実装)
C1 /2 ib RCL r/m16, imm8 17 ビット(CF、r/m16)を左に imm8 回回転させる。
C1 /4 ib SAL r/m16, imm8 r/m16 に 2 を imm8 回掛ける。
CD ib INT imm8 割り込みベクタ番号の即値バイトによる指定。(0x10を実装)
E8 cw CALL rel16 相対 near コール、次の命令とディスプレースメント相対。
E9 cw JMP rel16 次の命令との相対分量分だけ相対 near ジャンプする。
EB cb JMP rel8 次の命令との相対分量分だけ相対 short ジャンプする。
F3 A5 REP MOVS m16, m16 (E)CX のワードを DS:[(E)SI] から ES:[(E)DI] に転送する。