Главная » 2014 » Июль » 20 » Программирование на языке ассемблера для микроЭВМ
04:56
Программирование на языке ассемблера для микроЭВМ
Программирование на языке ассемблера для микроЭВМ - В книге американского автора рассмотрен весь процесс создания программ: от разработки проекта до оформления документации. Основное внимание уделено не описанию командного языка, а вопросам идеологии программирования для микроЭВМ. Материал книги насыщен практическими рекомендациями по реализации предлагаемых решений и проиллюстрирован конкретными примерами. В примерах использован язык микропроцессора Intel 8080A (отечественный аналог КР580ВМ80А). Для широкого круга программистов.
Название: Программирование на языке ассемблера для микроЭВМ Автор: Элфринг Г. Издательство: Радио и связь Год: 1987 Страниц: 168 Формат: DJVU Размер: 2,19 МБ Качество: Отличное Язык: Русский
Содержание:
Предисловие к русскому изданию Предисловие Глава 1. Введение 1.1. Работа с микропроцессорами 1.2. Хорошие программы 1.2.1. Программист 1.2.2. Программа 1.3. Методы программирования для микропроцессоров Глава 2. Руководство для программиста 2.1. Подход к задаче 2.1.1. Прежде всего определите задачу 2.1.2. Разделяйте программирование и решение задачи 2.1.3. Используйте структурный подход 2.1.4. Разработку ведите с ориентацией на конечного пользователя 2.1.5. Для разработки системы используйте группу программистов 2.1.6. Отделяйте логическое от физического 2.1.7. Учитывайте аппаратный подход 2.2. Кодирование программы 2.2.1. Программируйте модульно 2.2.2. Применяйте блоки заголовков 2.2.3. Комментируйте вашу программу 2.2.4. Используйте для переменных понятные мнемонические имена 2.2.5. Будьте последовательны 2.2.6. Избегайте излишних переходов 2.2.7. Избегайте хитростей 2.2.8. Предусматривайте средства отладки 2.2.9. Идите в работе от простого к сложному 2.3. Отладка программы 2.3.1. Перед отладкой программы проверьте ее вручную 2.3.2. Записывайте последовательность процедур проверки 2.3.3. Программу проверяйте по порядку 2.3.4. Разрабатывайте отладочное программное обеспечение Глава 3. Проектирование программы по методу «сверху вниз 3.1: Решение задачи и программирование 3.1.1. Определение задачи 3.1.2. Решение задачи 3.2. Метод проектирования «сверху вниз» 3.2.1. Анализ задачи 3.2.2. Ограничения для модулей 3.2.3. Иерархия модулей 3.2.4. Поток данных 3.2.5. Трудности, связанные с проектированием методом «сверху вниз» 3.3. Проектирование программ для микропроцессоров методом «сверху вниз, снизу вверх» 3.3.1. Сходство между методами 3.3.2. Определение ввода-вывода 3.3.3. Определение памяти 3.3.4. Требования к расширению системы 3.3.5. Дополнительные соображения 3.3.6. Требования к скорости и прерываниям 3.3.7. Точность 3.3.8. Завершение проекта Глава 4. Структурное программирование 4.1. Методы структурного программирования 4.1.1. Три принципа структурного программирования 4.1.2. Линейный код 4.1.3. Ограничения, налагаемые на программные модули 4.2. Структурное программирование на языке ассемблера 4.2.1. Избегайте лишних переходов 4.2.2. Правила структурного программирования на языке ассемблера 4.2.3. Псевдокод 4.2.4. Преимущества структурного программирования 4.3. Плохие методы программирования на языке ассемблера 4.3.1. Избегайте неправильного применения команд 4.3.2. Избегайте употребления команд, не описанных в документации 4.3.3. Избегайте модификации команд Глава 5. Разработка программного обеспечения 5.1. Цикл разработки программного обеспечения 5.2. Запись программы 5.2.1. Редакторы программ 5.2.2. Операционные системы 5.3. Тестирование с помощью программы-отладчика 5.3.1. Программа-отладчик 5.3.2. Тестирование под управлением отладчика 5.4. Тестирование с помощью внутрисхемного эмулятора 5.4.1. Внутрисхемный эмулятор 5.4.2. Особенности внутрисхемного эмулятора 5.5. Если программа не была хорошо проверена 5.5.1. Определение места ошибки 5.5.2. Сообщения пользователей об ошибках 5.5.3. Версии программного обеспечения, переданного пользователем Глава 6. Использование вашего ассемблера 6.1. Перемещаемые ассемблеры 6.1.1. Перемещаемый код 6.1.2. Управление памятью 6.1.3. Модульные программы 6.2. Макросредства 6.2.1. Макроопределение 6.2.2. Передача макрокоманде значений 6.2.3. Соединение текста 6.2.4. Псевдокоманда повторения 6.2.5. Псевдокоманда LOCAL 6.2.6. Псевдокоманда выхода из макрокоманды 6.2.7. Псевдокоманда для повторения неопределенное число раз 6.3. Применение макросредств 6.3.1. Макрокоманды общего назначения для микропроцессоров 8080 6.4. Включение в программу файлов 6.4.1. Применение директивы «Включить файл» Глава 7. Техника программирования на языке ассемблера 7.1. Организация программы 7.1.1. Блоки заголовка 7.1.2. Глобальные и внешние символы 7.1.3. Эквивалентные значения 7.1.4. Область данных 7.1.5. Область кодов 7.1.6. Секция инициализации 7.2.. Инициализация ваших программ 7.3. Флаги ИСТИНА и ЛОЖЬ 7.4. Один выход из подпрограммы 7.5. Избегайте лишних переходов 7.6. Избегайте глубокого вложения подпрограмм 7.7. Используйте табличные структуры 7.8. Отделяйте логическое от физического 7.9. Специальные методы программирования 7.9.1. Функция «исключающее ИЛИ» 7.9.2. Передача информации в подпрограмму 7.9.3. Условные вызовы подпрограммы Глава 8. Диспетчеры реального времени 8.1. Что такое диспетчер реального времени? 8.1.1. Реальное время 8.1.2. Диспетчеры 8.1.3. Проблемы реального времени 8.2. Общие концепции диспетчера 8.2.1. Программные задачи 8.2.2. Одновременность выполнения 8.2.3. Приоритет 8.2.4. Приостанов 8.2.5. Реентерабельный код 8.3. Функции диспетчера реального времени 8.3.1. Планирование задач 8.3.2. Контроль времени 8.3.3. Программные события 8.3.4. Управление памятью 8.4. Недостатки диспетчеров реального времени 8.4.1. Накладные расходы 8.4.2. Требования к памяти 8.4.3. Цена 8.4.4. Отладка под управлением диспетчера реального времени 8.5. Программирование для работы под управлением диспетчера Глава 9. Языки высокого уровня 9.1. Что такое язык высокого уровня 9.2. Совместное использование языков ассемблера и высокого уровня 9.2.1. Отделяйте логическое от физического 9.2.2. Взаимодействие языков ассемблера и высокого уровня 9.3. Обзор языков высокого уровня 9.3.1. Характеристики языка 9.3.2. Ада 9.3.3. Бейсик 9.3.4. СИ 9.3.5. Кобол 9.3.6. Форт 9.3.7. Фортран 9.3.8. Лисп 9.3.9. Паскаль 9.3.10. ПЛ/М 9.4. Препроцессирование с языками высокого уровня 9.4.1. Зачем нужен препроцессор 9.4.2. Что такое препроцессор? Приложения Приложение А. Набор символов кода ASCII Приложение Б. Работа с дисками и листингами Приложение В. Разработка диспетчера реального времени Приложение Г. Язык ассемблера 8080 Г.1. Псевдокоманды ассемблера Г.2. Система команд