📄 dcassigninstrtable.pas
字号:
unit dcAssignInstrTable;
interface
type
TMnemonic = (mUnknown, mMov, mRet, mPush, mPop);
TArgumentOpcType = (aotNone, aotModRMRMv, aotModRMRegv, aotImmb, aotRegEAXv, aotRegEBPv);
TOpcode = record
M: TMnemonic;
A: array[1..3] of TArgumentOpcType;
end;
{ TODO -cAdditions : Fill the table correct. }
const
OneByteOpcodes: array[AnsiChar] of TOpcode =
// 0
((M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 1
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 2
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 3
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 4
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 5
(M: mPush; A: (aotRegEAXv, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mPush; A: (aotRegEBPv, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mPop; A: (aotRegEAXv, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mPop; A: (aotRegEBPv, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 6
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 7
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 8
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mMov; A: (aotModRMRMv, aotModRMRegv, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// 9
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// A
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// B
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// C
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mRet; A: (aotImmb, aotNone, aotNone)), (M: mRet; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// D
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// E
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
// F
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)),
(M: mUnknown; A: (aotNone, aotNone, aotNone)), (M: mUnknown; A: (aotNone, aotNone, aotNone)));
implementation
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -