Язык ассемблера для IBM PC
Автор(ы): | Нортон П., Соухэ Д.
27.03.2013
|
Год изд.: | 1992 |
Описание: | Книга предназначена для читателей-программистов, желающих изучить язык ассемблер и возможности микропроцессоров 8088 с целью написания более мощных, быстрых и коротких программ. "Гроссмейстер" программирования Питер Нортон делится своим богатым опытом с читателями. Книга существенно расширяет кругозор пользователей IBM PC. К тому времени, как вы закончите чтение этой книги, вы будете знать, как создавать полноценные программы на языке ассемблера: редакторы текста, утилиты, и т. д Вы познакомитесь с техническими приемами профессиональных программистов, облегчающих процедуру написания программ. Будут рассмотрены модульное конструирование программ ("modular design") и их пошаговое усовершенствование ("stepwise refinement"), которые наверняка удвоят вашу скорость программирования, а также помогут вам писать легко читаемые и более надежные программы. |
Оглавление: |
Обложка книги.
Почему именно Ассемблер? [3]Dskpatch [5] Требования к конфигурации компьютера [5] Организация этой книги [5] Часть I. Язык машины Глава 1. DEBUG и арифметика Шестнадцатеричные числа [7] Debug [8] Шестнадцатеричная арифметика [9] Перевод шестнадцатеричных чисел в десятичную форму [11] Пятизначные шестнадцатеричные числа [15] Перевод десятичных чисел в шестнадцатеричную форму [15] Отрицательные числа [17] Биты, байты, слова и двоичная система счисления [19] Дополнительный код - особый тип отрицательного числа [21] Итог [22] Глава 2. Арифметика микропроцессора [8088] Регистры как переменные [24] Память и микропроцессор 8088 [26] Сложение, метод микропроцессора 8088 [28] Вычитание, метод микропроцессора 8088 [31] Отрицательные числа в микропроцессоре 8088 [31] Байты в микропроцессоре 8088 [32] Умножение и деление, метод микропроцессора 8088 [33] Итог [35] Глава 3. Вывод символов на экран INT - мощное прерывание [36] Грациозный выход - INT 20h [39] Программа из двух строк - соединение частей вместе [40] Ввод программ [41] Использование команды MOV для пересылки данных между регистрами [42] Вывод на экран строки символов [45] Итог [47] Глава 4. Вывод на экран двоичных чисел Циклический сдвиг и флаг переноса [48] Сложение с использованием флага переноса [50] Организация циклов [51] Вывод на экран двоичного числа [54] Команда обхода [56] Итог [57] Глава 5. Вывод на экран чисел в шестнадцатеричной форме Операция сравнения и биты состояния [58] Вывод на экран одной шестнадцатеричной цифры [61] Еще одна инструкция сдвига [64] Логика и AND [66] Сборка всех частей программы вместе [68] Итог [69] Глава 6. Ввод символов с клавиатуры Ввод одного символа [69] Считывание шестнадцатеричного числа, состоящего из одной цифры [71] Считывание двузначного шестнадцатеричного числа [72] Итог [73] Глава 7. Процедуры - двоюродные сестры подпрограмм Процедуры [73] Стек и адрес возврата [75] Использование инструкций PUSH и POP [77] Более простой способ считывания шестнадцатеричных чисел [79] Итог [81] ЧАСТЬ II. Язык ассемблера Глава 8. Добро пожаловать в ассемблер! Создание программы без использования Debug [83] Создание исходных файлов [86] Компоновка [87] Обратно в Debug [89] Комментарии [89] Метки [90] Итог [92] Глава 9. Ассемблер и процедуры Процедуры ассемблера [93] Процедуры, выводящие на экран шестнадцатеричные числа [97] Начала модульного конструирования программ [100] Структура программы [101] Итог [102] Глава 10. Вывод на экран десятичных чисел Вспоминаем перевод чисел [103] Некоторые трюки [106] Внутренняя работа [107] Итог [109] Глава 11. Сегменты Секционирование памяти микропроцессором 8088 [110] Псевдооператоры сегментов [117] Псевдооператор ASSUME [118] "Близкие" и "дальние" вызовы процедур [119] Подробнее об инструкции INT [122] Вектора прерываниий [124] Итог [125] Глава 12. Коррекция курса Дискеты, сектора и Dskpatch [126] План игры [128] Итог [130] Глава 13. Модульное конструирование Раздельное ассемблирование [131] Три Закона Модульного Конструирования [134] Итог [139] Глава 14. Дампирование памяти Режимы адресации [140] Добавление в дамп символов [146] Дампирование 256 байт памяти [148] Итог [153] Глава 15. Дампирование сектора диска Облегчение жизни [154] Формат файла для Make [155] "Починка" Disp_sec [156] Считывание сектора [158] Итог [162] Глава 16. Улучшение изображения сектора Добавление графических символов [163] Добавление к изображению адресов [165] Добавление горизонтальных линий [168] Добавление к изображению чисел [174] Итог [176] Часть III. ROM BIOS IBM PC Глава 17. Подпрограммы ROM BIOS VIDEO-IO, подпрограммы ROM BIOS [177] Движение курсора [182] Применение изменяемых переменных. 184 Построение заголовка [188] Итог [191] Глава 18. Окончательный вариант WRITE_CHAR Новая процедура WRITE-CHAR [193] Стирание до конца строки [196] Итог [198] Глава 19. Диспетчер Dispatcher [199] Считывание других секторов [206] Философия следующих глав [209] Глава 20. Вызов программистам Псевдокурсор [210] Простейшее редактирование [212] Другие изменения и дополнения к Dskpatch [212] Глава 21. Псевдокурсоры Изменение атрибута символа [220] Итог [221] Глава 22. Простейшее редактирование Перемещение псевдокурсоров [222] Простейшее редактирование [226] Итог [230] Глава 23. Шестнадцатеричный и десятичный ввод Шестнадцатеричный ввод [231] Десятичный ввод [240] Итог [243] Глава 24. Улучшенный ввод с клавиатуры Новая процедура READ_STRING [244] Глава 25. В поисках ошибок Исправление DISPATCHER [252] Итог [254] Глава 26. Запись модифицированных секторов на диск Запись на диск [255] Некоторые приемы отладки [257] Построение карты загрузки [258] Трассировка ошибок [261] Symdeb [263] Символьная отладка [263] Экранный свопинг [264] Итог [266] Глава 27. Другая половина сектора Скроллинг половины сектора [267] Итог [270] ЧАСТЬ IV. Дополнение к сказанному Глава 28. Перемещение Программы, состоящие из нескольких сегментов [271] Перемещение [276] .СОМ-программы в сравнении сЕХЕ-программами [280] Глава 29. Подробнее о сегментах и ASSUME Переприсвоение сегментов [283] Еще один взгляд на ASSUME [285] Фазовые ошибки [286] Послесловие [287] Приложение А. Руководство по диску Примеры к главам [289] Улучшенная версия Dskpatch [290] Приложение В. Листинг DSKPATCH Описание процедур [295] CURSOR.ASM [295] DISK_IO.ASM [295] DISPATCH.ASM [296] DISP_SEC.ASM [296] DSKPATCH.ASM [296] EDITOR.ASM [296] KBDJO.ASM [297] PHANTOM.ASM [297] VIDEO_IO.ASM [299] Листинг процедур Dskpatch [300] DSKPATCH Make File [300] CURSOR.ASM [300] DISK_IO.ASM [303] DISPATCH.ASM [306] DISP_SEC.ASM [308] DSKPATCH.ASM [312] EDITOR.ASM. [314] KBD_IO.ASM. [316] PHANTOM.ASM [323] VIDEO_IO.ASM [329] Приложение С Порядок загрузки сегментов [336] Фазовые ошибки трансляции [339] Сообщение "File Cannot be Converted" [341] Приложение D. Сообщения об ошибках MASM [343] LINK [344] EXE2BIN [345] |
Формат: | djvu |
Размер: | 4252478 байт |
Язык: | РУС |
Рейтинг: | 148 |
Открыть: | Ссылка (RU) |