
266 CHAPTER 10 ADL++: Object-Oriented Specification
The specification of the addressing modes using regular expressions is given here.
In these expressions,the instruction fields,sets of registers,and other sets of values
appear as artifacts:
#- Instruction fields
#
type
.....
s8 signed integer variable 8 bit,
s16 signed integer variable 16 bit,
s32 signed integer variable 32 bit;
set
scaleVals { 1, 2, 4, 8 };
addressing modes
disp32 s32,
base "[" reg32_noESBP "]",
base_index "[" reg32_noEBP [-+] reg32_noESP "]",
base_index_scale "[" reg32_noEBP [-+] reg32_noESP "*" scaleVals "]",
index_scale_disp32 "[" reg32_noESP "*" scaleVals [-+] s32 "]",
base_disp8 "[" reg32_noESP ...