Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
msx:assembler_programming_guide-fakhrutdinov_bocharov:start [2020-05-11 15:38] GreyWolf [Оглавление] |
msx:assembler_programming_guide-fakhrutdinov_bocharov:start [2022-08-07 22:28] (текущий) GreyWolf [Аннотация] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== 🕮 Программирование на языке ассемблера в системе MSX-2 ====== | + | ====== 📖 Программирование на языке ассемблера в системе MSX-2 ====== |
- | FIXME | + | |
- | К.И.Фахрутдинов, И.И.Бочаров | + | Авторы: |
+ | Фахрутдинов Кирилл Ильнурович, Бочаров Игорь Иванович. | ||
- | Владивосток: Приморский ИУУ, 1991, 192 с. | + | Выходные данные печатной версии книги: |
- | + | \\ К.И.Фахрутдинов, И.И.Бочаров — Владивосток: Приморский ИУУ, 1991, 192 с. | |
- | УДК 681.325.5-181.4 | + | \\ УДК 681.325.5-181.4 |
---- | ---- | ||
За основу взят [[github>oboroc/msx-books/blob/master/z80-fb-1991-ru.md|этот файл]], который был доведён до [[github>mr-GreyWolf/msx-books/blob/master/z80-fb-1991-ru.md|этого]] состояния. | За основу взят [[github>oboroc/msx-books/blob/master/z80-fb-1991-ru.md|этот файл]], который был доведён до [[github>mr-GreyWolf/msx-books/blob/master/z80-fb-1991-ru.md|этого]] состояния. | ||
+ | \\ {{z80-fb-1991.doc|Оригинал в формате MS Word}} | ||
+ | [[sam>msxapguidefb|Короткая ссылка на книгу]] | ||
====== Аннотация ====== | ====== Аннотация ====== | ||
- | В книге описан язык ассемблера для микропроцессора Z80, используемого в качестве основного процессора системы MSX-2 (КУВТ "YAMAHA"). Рассмотрен процесс создания и выполнения программ на языке ассемблера, организации их связи с программами на языках MSX-BASIC и ASCII-C. На | + | В книге описан язык ассемблера для микропроцессора [[zilog_z80:zilog_z80|Z80]], используемого в качестве основного процессора системы [[msx:yamaha_kuvt:yamaha_kuvt#kuvt2|MSX-2 (КУВТ "YAMAHA")]]. Рассмотрен процесс создания и выполнения программ на языке ассемблера, организации их связи с программами на языках [[msx:basic:]] и [[msx:ascii_c:ascii_c|ASCII-C]]. На примерах показано использование основных типов команд ассемблера и макроассемблера, описаны основные типы вредоносного программного обеспечения и методы защиты информации. |
- | примерах показано использование основных типов команд ассемблера и макроассемблера, описаны основные типы вредоносного программного обеспечения и методы защиты информации. | + | |
Книга рассчитана на широкий круг учителей информатики, программистов и школьников и будет полезна в качестве учебного пособия по архитектуре микрокомпьютеров. | Книга рассчитана на широкий круг учителей информатики, программистов и школьников и будет полезна в качестве учебного пособия по архитектуре микрокомпьютеров. | ||
Строка 29: | Строка 30: | ||
* [[01#n13|1.3. Редактирование связей и сборка программы]] | * [[01#n13|1.3. Редактирование связей и сборка программы]] | ||
* [[01#n14|1.4. Выполнение программы]] | * [[01#n14|1.4. Выполнение программы]] | ||
- | * [[01#n15|1.5. Организация связей с программами на языке MSX-BASIC]] | + | * [[01#n15|1.5. Организация связей с программами на языке MSX BASIC]] |
* [[01#n151|1.5.1. Общая память]] | * [[01#n151|1.5.1. Общая память]] | ||
* [[01#n152|1.5.2. Передача и получение параметров]] | * [[01#n152|1.5.2. Передача и получение параметров]] | ||
Строка 37: | Строка 38: | ||
* [[01#n163|1.6.3. Трансляция и сборка разноязыковых модулей]] | * [[01#n163|1.6.3. Трансляция и сборка разноязыковых модулей]] | ||
* [[02|2. Программирование на языке ассемблера]] | * [[02|2. Программирование на языке ассемблера]] | ||
- | * [2.1. Директивы ассемблера](#2.1) | + | * [[02#n21|2.1. Директивы ассемблера]] |
- | * [2.2. Системы счисления](#2.2) | + | * [[02#n22|2.2. Системы счисления]] |
- | * [2.3. Выделение памяти и запись значений](#2.3) | + | * [[02#n23|2.3. Выделение памяти и запись значений]] |
- | * [2.4. Команды загрузки и обмена](#2.4) | + | * [[02#n24|2.4. Команды загрузки и обмена]] |
- | * [2.5. Управление печатью листинга](#2.5) | + | * [[02#n25|2.5. Управление печатью листинга]] |
- | * [2.6. Арифметические команды](#2.6) | + | * [[02#n26|2.6. Арифметические команды]] |
- | * [2.6.1. Представление операндов](#2.6.1) | + | * [[02#n261|2.6.1. Представление операндов]] |
- | * [2.6.2. Работа с восьмиразрядными числами](#2.6.2) | + | * [[02#n262|2.6.2. Работа с восьмиразрядными числами]] |
- | * [2.6.3. Работа с шестнадцатиразрядными числами](#2.6.3) | + | * [[02#n263|2.6.3. Работа с шестнадцатиразрядными числами]] |
- | * [2.7. Логические команды и работа с битами](#2.7) | + | * [[02#n27|2.7. Логические команды и работа с битами]] |
- | * [2.8. Команды перехода и условного перехода](#2.8) | + | * [[02#n28|2.8. Команды перехода и условного перехода]] |
- | * [2.9. Команды сдвига](#2.9) | + | * [[02#n29|2.9. Команды сдвига]] |
- | * [2.10. Пересылки блока данных](#2.10) | + | * [[02#n210|2.10. Пересылки блока данных]] |
- | * [2.11. Команды поиска](#2.11) | + | * [[02#n211|2.11. Команды поиска]] |
- | * [2.12. Подпрограммы и прерывания](#2.12) | + | * [[02#n212|2.12. Подпрограммы и прерывания]] |
- | * [2.13. Подпрограммы BIOS](#2.13) | + | * [[02#n214|2.13. Подпрограммы BIOS]] |
- | * [2.13.1. Клавиатура](#2.13.1) | + | * [[02#n2131|2.13.1. Клавиатура]] |
- | * [2.13.2. Звукогенератор](#2.13.2) | + | * [[02#n2132|2.13.2. Звукогенератор]] |
- | * [2.13.3. Графика](#2.13.3) | + | * [[02#n2133|2.13.3. Графика]] |
- | * [2.13.4. Магнитофон](#2.13.4) | + | * [[02#n2134|2.13.4. Магнитофон]] |
- | * [2.13.5. Часы и энергонезависимая память](#2.13.5) | + | * [[02#n2135|2.13.5. Часы и энергонезависимая память]] |
- | * [2.13.6. Межслотовые вызовы подпрограмм](#2.13.6) | + | * [[02#n2136|2.13.6. Межслотовые вызовы подпрограмм]] |
- | * [2.13.7. Вывод на печать](#2.13.7) | + | * [[02#n2137|2.13.7. Вывод на печать]] |
- | * [2.14. Ловушки](#2.14) | + | * [[02#n214|2.14. Ловушки]] |
- | * [2.14.1. Работа с файлами](#2.14.1) | + | * [[02#n2141|2.14.1. Работа с файлами]] |
- | * [2.14.2. Работа с клавиатурой](#2.14.2) | + | * [[02#n2142|2.14.2. Работа с клавиатурой]] |
- | * [2.15. Подпрограммы интерпретатора языка MSX-BASIC](#2.15) | + | * [[02#n215|2.15. Подпрограммы интерпретатора языка MSX BASIC]] |
- | * [2.15.1. Работа с целыми числами](#2.15.1) | + | * [[02#n2151|2.15.1. Работа с целыми числами]] |
- | * [2.15.2. Работа с вещественными числами](#2.15.2) | + | * [[02#n2151|2.15.2. Работа с вещественными числами]] |
- | * [2.16. Подпрограммы BDOS](#2.16) | + | * [[02#n216|2.16. Подпрограммы BDOS]] |
- | * [2.17. Сетевые функции](#2.17) | + | * [[02#n217|2.17. Сетевые функции]] |
- | * [2.18. Работа с портами ввода/вывода](#2.18) | + | * [[02#n218|2.18. Работа с портами ввода/вывода]] |
- | * [2.19. Работа с видеорегистрами и видеопамятью](#2.19) | + | * [[02#n219|2.19. Работа с видеорегистрами и видеопамятью]] |
- | * [2.19.1. Порядок чтения и записи информации](#2.19.1) | + | * [[02#n2191|2.19.1. Порядок чтения и записи информации]] |
- | * [2.19.2. Использование команд видеопроцессора](#2.19.2) | + | * [[02#n2192|2.19.2. Использование команд видеопроцессора]] |
- | * [2.20. Программирование шумов и музыки](#2.20) | + | * [[02#n220|2.20. Программирование шумов и музыки]] |
- | * [2.21. Управление памятью](#2.21) | + | * [[02#n221|2.21. Управление памятью]] |
- | * [2.21.1. Работа с кассетами (картриджами)](#2.21.1) | + | * [[02#n2211|2.21.1. Работа с картриджами]] |
- | * [2.21.2. Создание CALL-подпрограмм пользователя](#2.21.2) | + | * [[02#n2212|2.21.2. Создание CALL-подпрограмм пользователя]] |
- | * [2.22. Работа с файлами](#2.22) | + | * [[02#n222|2.22. Работа с файлами]] |
- | * [2.22.1. Абсолютное чтение/запись](#2.22.1) | + | * [[02#n2221|2.22.1. Абсолютное чтение/запись]] |
- | * [2.22.2. Использование системных функций](#2.22.1) | + | * [[02#n2222|2.22.2. Использование системных функций]] |
- | * [2.23. Ошибки программирования и правонарушения, связанные с компьютерами](#2.23) | + | * [[02#n223|2.23. Ошибки программирования и правонарушения, связанные с компьютерами]] |
- | * [2.23.1. Троянские кони](#2.23.1) | + | * [[02#n2231|2.23.1. Троянские кони]] |
- | * [2.23.2. Компьютерные вирусы](#2.23.2) | + | * [[02#n2232|2.23.2. Компьютерные вирусы]] |
- | * [2.23.3. Компьютерные черви](#2.23.3) | + | * [[02#n2233|2.23.3. Компьютерные черви]] |
- | * [2.23.4. Методы защиты информации](#2.23.4) | + | * [[02#n2234|2.23.4. Методы защиты информации]] |
* [[03#n3|3. Макропрограммирование]] | * [[03#n3|3. Макропрограммирование]] | ||
* [[03#n31|3.1. Генерация текста на языке ассемблера]] | * [[03#n31|3.1. Генерация текста на языке ассемблера]] | ||
Строка 96: | Строка 97: | ||
* [[12|Приложение 2. Листинг программы "Океан"]] | * [[12|Приложение 2. Листинг программы "Океан"]] | ||
* [[13|Приложение 3. Листинг программы управления спрайтом]] | * [[13|Приложение 3. Листинг программы управления спрайтом]] | ||
- | * [[14|Приложение 4. Пример организации связей с языком MSX-BASIC. Универсальное меню]] | + | * [[14|Приложение 4. Пример организации связей с языком MSX BASIC. Универсальное меню]] |
====== Ссылки ====== | ====== Ссылки ====== | ||
Строка 103: | Строка 104: | ||
[[github>mr-GreyWolf/msx-books/blob/master/z80-fb-1991-ru.md]] | [[github>mr-GreyWolf/msx-books/blob/master/z80-fb-1991-ru.md]] | ||
+ | |||
+ | [[https://mirrors.pdp-11.ru/_msx/books/Fahrutdinov%20-%20Programmirovaniye%20na%20ASM%20MSX2%20(ru).doc|Оригинал в формате MS Word]] | ||
+ | |||
+ | [[msxorg>node/35414?page=2|Нужна книжка "Программирование на языке ассемблера Z80 для MSX-2" ]] | ||
- | {{tag>Topic MSX assembler Programming Book_apguidefb on_github}} | + | {{tag>MSX assembler Book_apguidefb on_github}} |