Пример программы в командах процессора.
Программа
для процессора Intel,
которая увеличивает число, находящееся
в регистре AX,
в 10 раз. Здесь вместо умножения используются
более быстрые команды сдвига влево.
Каждый такой сдвиг эквивалентен умножению
на 2.
Первый
столбец – адреса команд
Второй
– двоичный код команд процессора
Третий
– более компактная запись в шестнадцатеричном
виде
Четвертый
– ассемблерная мнемоника
Затем – расшифровывается
смысл операции и приводится результат.
D1
E0SHL
AX,1Сдвиг AX
влево на один разряд2Z1101
0001Адрес
1110
0000
|
Маш.
код
|
16-ричн.
код
|
Мнемоника
|
Операция
|
Результат
|
102100
|
1000
1001
1100
0011
|
89
C3
|
MOV
BX,AX
|
Скопировать
AX
в BX
|
2Z
|
104
|
1100
0001
1110
0000
0000
0010
|
C1
E0 02
|
SHL
AX,02
|
Сдвиг
AX
влево на два разряда
|
8Z
|
107
|
0000
0001
1101
1000
|
01
D8
|
ADD
AX,BX
|
Сложить
AX
с BX
|
10Z
|
Эта
программа по длине больше, чем простое
умножение на 10, но работать она будет
намного быстрее.
1
Синий Брукшир
13