Набор команд микропроцессора
Набор команд Архитектуры CISC и RISC
Принципы RISC-архитектуры
Особенности СISC-архитектуры
Длина и формат машинной команды
219.00K
Категория: ПрограммированиеПрограммирование

2023 Набор команд

1. Набор команд микропроцессора

2. Набор команд Архитектуры CISC и RISC

• Две основные архитектуры набора команд - CISC и RISC
• CISC – Complete Instruction Set Computer
Архитектура с полным набором команд
Микропроцессоры Intel
• RISC – Reduced Instruction Set Computer
Архитектура с сокращенным набором команд
Популярны во всем мире, т.к. на такой архитектуре работают рабочие
станции и серверы под управлением ОС Unix
Разработанf первоначально компанией IBM
2

3. Принципы RISC-архитектуры

• Каждая команда выполняется за один такт (должен
быть максимально коротким)
• Все команды имеют одинаковую длину и формат
(упрощение логики управления процессором)
• Обработка данных происходит только в регистрах
процессора, обращение к памяти только при
операциях чтения и записи
• Система команд должна обеспечивать поддержку языка
высокого уровня
50 инструкций в архитектурах 1 поколения
Около 150 инструкций в современных RISC-процессорах
3

4. Особенности СISC-архитектуры

• В систему команд добавлены «удобные» для
программиста команды (маленькие подпрограммы)
Ускорение разработки программ
Команды CISC-процессора имеют разную длину и
время выполнения
Некоторые команды выполняются за несколько тактов
Производительность ниже
4

5.


CISC и RISC – принципы и технологии.
• «Архитектура каждого конкретного процессора
представляет собой результат множества компромиссов»
(Хамахер и др.)
• CISC-процессоры – персональные компьютеры
• RISC-процессоры – высокопроизводительные серверы и
рабочие станции
5

6. Длина и формат машинной команды

ДЛИНА И ФОРМАТ
МАШИННОЙ КОМАНДЫ
Команда (код операции, КОП) <операнд1>, <операнд2>
КОП -1 байт, Оп1 – 1-2 б, Оп2 – 1-2 б
Итого?
add операнд1,операнд2 —
команда сложения
mov ax, 3
с принципом действия:
оп1 = оп1 + оп2
mov bx, 2
add ax, bx
Команда перехода (КОП) <адрес>
Прямой переход – указан адрес (метка)
Косвенный переход – указан регистр, где хранится адрес
jmp Label N
6
jmp eax

7.

Команды условного перехода
Jxx <адрес (метка)> (хх заменяется требуемой буквой)
ПРИМЕРЫ:
JE <адрес> переход, если равны операнды в предыдущей команде
JNE <адрес> переход, если не равны
7

8.

Команды условного перехода
Jxx <адрес (метка)> (хх заменяется требуемой буквой)
ПРИМЕРЫ:
JE <адрес> переход, если равны операнды в предыдущей команде
JNE <адрес> переход, если не равны
Взлом изменением 1 байта!
A:= Введите код (пароль, …)
If A= ‘эталонный код’
then ДОСТУПНО;
else НЕТ ДОСТУПА
8

9.

Команды условного перехода
Jxx <адрес (метка)> (хх заменяется требуемой буквой)
ПРИМЕРЫ:
JE <адрес> переход, если равны операнды в предыдущей команде
JNE <адрес> переход, если не равны
Взлом изменением 1 байта!
A:= Введите код (пароль, …)
If A= ‘эталонный код’
then ДОСТУПНО;
else НЕТ ДОСТУПА
сmp A, ax
JE <метка ДА>
«Нет ДОСТУПА»
……
ДА: ------……{команды}
……
9
English     Русский Правила