Similar presentations:
Презентация
1. Министерство образования и науки Краснодарского края ГАПОУ КК «Новороссийский колледж строительства и экономики»
Презентацияна тему:
«Ассемблер и его
комплектующие»
Руководитель:
Автор: Фельдман Ян Евгеньевич,
Елбакиев Артём Юрьевич, Сиротин
Александр Андреевич, Сметник Руслан
Владиславович
Студент группы ИП-22-24
Преподаватель информатики
Новороссийск 2026
Каспрук А.А
2. Что такое ассемблер?
Низкоуровневоепрограммное обеспечение.
Преобразует
человекочитаемые
инструкции (мнемоники) в
двоичный машинный код.
Позволяет
программировать на
уровне, максимально
близком к аппаратуре.
3. Основные характеристики и назначение
Основные характеристикии назначение
Характеристики:
Машинный уровень программирования.
Прямое управление аппаратурой.
Использование специфических команд и регистров
процессора.
Максимальная эффективность и производительность.
Назначение:
Создание компактного и быстрого кода.
Разработка драйверов, ОС, встроенных систем.
Реверс-инжениринг.
Обучение архитектуре компьютера.
4. История и развитие
•1940-1950-е : Ручноепрограммирование, первые
ассемблеры (IBM 701).
•1960-е: Развитие для архитектур x86,
MIPS, ARM.
•1970-1980-е: Популяризация RISCархитектур.
•Современность: Инструменты для
реверс-инжиниринга (Ghidra, IDA
Pro), открытые стандарты (RISC-V).
5. Основные компоненты ассемблера
Лексический анализатор: Разбивает код на токены(команды, регистры, метки).
Парсер: Анализирует структуру инструкций.
Генератор кода: Преобразует инструкции в машинный код.
Обработка директив: Управляет структурой программы
(.data, .text).
Отладчики: Инструменты для пошагового выполнения и
анализа.
6. Архитектурные направления (x86/x86-64)
Особенности: Режимы (Real, Protected,Long), огромный набор команд,
поддержка 16/32/64 бит.
Применение: Ядра ОС (Windows,
Linux), драйверы, системные
библиотеки.
Инструменты: MASM, NASM, GAS.
7. Архитектурные направления (ARM, MIPS, RISC-V)
Архитектурные направления (ARM,MIPS, RISC-V)
ARM: Энергоэффективность,
множество регистров, мобильные и
встроенные системы.
MIPS: Простая RISC-архитектура,
академическое и встроенное
применение.
RISC-V: Открытая, расширяемая
архитектура, будущее встроенных
систем и исследований.
8. Виды инструкций и адресация
Виды инструкций:Движение данных (MOV, LOAD/STORE)
Арифметические (ADD, SUB)
Логические (AND, OR)
Управление потоком (JMP, CALL, условные переходы)
Типы адресации: Регистровая, косвенная,
индексированная.
9. Синтаксис ассемблера
Intel-синтаксис: MOV назначение, источникAT&T-синтаксис: movl источник, назначение (с префиксами %,
указание размера)
Ключевые отличия: Порядок операндов, форматы записи.
10. Структура ассемблерной программы
Сегмент данных (.data): Объявлениеинициализированных переменных.
Сегмент BSS (.bss): Резервирование
неинициализированной памяти.
Сегмент кода (.text): Основная логика
программы.
Обработка ошибок и завершение:
Корректный выход через системные
вызовы.
11. Роль в системном программировании
Драйверы устройств: Прямой доступк портам и регистрам, обработка
прерываний.
Операционные системы: Загрузчики
(bootloaders), ядро, системные вызовы,
управление памятью.
Встроенные
системы: Микроконтроллеры,
минимальный размер кода, прямое
управление периферией.
12. Преимущества ассемблера
• Высокая скорость и минимальный размер кода.• Прямой низкоуровневый контроль над аппаратурой.
• Незаменим для изучения архитектуры процессора.
13. Недостатки ассемблера
Недостатки ассемблераВысокая сложность и трудоёмкость
разработки.
Плохая масштабируемость для больших
проектов.
Отсутствие переносимости между
архитектурами.
Высокий риск ошибок.
14. Современное применение
Встраиваемые системы и IoT.Криптография (аппаратное ускорение).
Образовательный процесс.
Реверс-инжиниринг и анализ безопасности.
Оптимизация критичных участков в
высокоуровневых языках (inline-ассемблер).
15. Инструменты и пример кода
Ассемблеры: NASM, MASM, GAS, FASM.Дизассемблеры/Реверс-инжиниринг: IDA Pro, Ghidra.
Простой пример (Hello World на NASM x86):
section .data
msg db 'Hello, world!', 0xA
len equ $ - msg
section .text
global _start
_start:
mov eax, 4
mov ebx, 1
mov ecx, msg
mov edx, len
int 0x80
mov eax, 1
xor ebx, ebx
int 0x80
16. Заключение1488
Заключение1488
Ассемблер — фундаментальный инструмент для
низкоуровневого программирования.
Обеспечивает непревзойдённый контроль и
производительность.
Остаётся критически важным в системном, встраиваемом
программировании, безопасности и образовании.
Несмотря на сложность, его понимание необходимо для
глубокого познания работы вычислительной техники.
Кодируйте деда минимум по 15 минут в день.
programming