Содержание
- 2. Логические операции Логические операции в языке C: && – логическое «И» || – логическое «ИЛИ» !
- 3. Поразрядные (побитовые) операции Поразрядные операции в языке C: & – побитовое «И» | – побитовое «ИЛИ»
- 4. Поразрядные (побитовые) операции Стрелка Пирса и штрих Шеффера:
- 5. Поразрядные (побитовые) операции Арифметические сдвиги: A A >>= B == A / 2B Примеры арифметического сдвига:
- 6. Различия между логическими и поразрядными операциями в языке C Логические операции: 15 && 10 == 1
- 7. Работа с отдельными битами числа Задание: Инвертировать пятый и шестой биты младшего байта числа X. 1
- 8. Работа с отдельными битами числа Задание: Инвертировать пятый и шестой биты младшего байта числа X. 2
- 9. Работа с отдельными битами числа Задание: Инвертировать пятый и шестой биты младшего байта числа X. 3
- 10. Работа с отдельными битами числа Задание: выполнить циклический сдвиг числа x вправо на 2. 1 способ
- 11. Работа с отдельными битами числа Задание: выполнить циклический сдвиг числа x вправо на 2. 2 способ
- 12. Работа с отдельными битами числа Задание: выполнить циклический сдвиг числа x вправо на 2. 3 способ
- 13. Задание 1 Задача: Напишите программу на языке C, которая инвертирует второй по старшинству байт случайного числа
- 14. Задание 2 Задача: Напишите программу на языке C, которая меняет местами нулевой и третий, а также
- 15. Задание 3 Задача: Напишите программу на языке C, которая обнуляет биты случайного числа X типа int
- 16. Задание 4 Задача: Напишите программу на языке C, которая заносит в биты случайного числа X типа
- 17. Задание 5 Задача: Напишите программу на языке C, которая выполняет циклический сдвиг влево на 3 первого
- 18. Задание 6 Задача: Напишите программу на языке C, которая выполняет проверку значения седьмого бита случайного числа
- 19. Задание 7 Задача: Напишите программу на языке C, которая получает случайное число X типа int. В
- 20. Ассемблер. NASM
- 21. Установка NASM Установка NASM: Проверка наличия NASM в ОС: nasm –h (или просто nasm) 1 способ
- 22. Установка NASM Установка NASM: 2 способ установки NASM: Загрузка архива, содержащего NASM Разархивировать (например, в папку
- 23. Установка NASM Установка NASM: . . Терминал -> cd ./nasm_cat sh autogen.sh (может не понадобиться) sh
- 24. Установка NASM
- 25. Написание программ NASM Написание программ: Любой текстовый редактор (стандартный или любой другой) Расширение (суффикс) файла -
- 26. Компиляция NASM Компиляция: Проходит в 2 этапа: Ассемблирование На выходе – объектный файл file.o Сборка (компановка)
- 27. Ассемблирование Ассемблирование: nasm -f [-o ] Формат выходных файлов: elf bin obj coff … (их много)
- 28. Ассемблирование Пример: nasm -f elf prog_nasm.asm Результат: prog_nasm.o Или: nasm -f elf prog_nasm.asm -o abc.o Результат:
- 29. Ассемблирование nasm -f elf prog_nasm2.asm
- 30. Компановка Компановщик – ld ([эль-дэ]). ld prog_nasm2.o –o prog_nasm2
- 31. Компановка Используемая ОС – Linux Ubuntu x64, поэтому выведено сообщение об ошибке
- 32. Компановка Для 64-битных ОС: ld –m elf_i386 prog_nasm2.o –o prog_nasm2
- 33. Запуск программ NASM Запуск: ./prog_nasm2
- 34. Рекомендуемая литература 1. Расширенный ассемблер: NASM https://www.opennet.ru/docs/RUS/nasm/
- 35. Рекомендуемая литература 2. А.В. Столяров. Программирование на языке ассемблера NASM для OS UNIX. 2011
- 37. Скачать презентацию