- •Введение
- •Раздел «Создание и эволюция эвм» Глава 1. Научные предпосылки создания эвм
- •Управление и информация
- •Информация и ее свойства
- •Экономическая информация
- •Три формы адекватности информации
- •Меры информации
- •Синтаксические меры информации
- •Семантическая мера информации
- •Прагматическая мера информации
- •Показатели качества информации
- •Репрезентативность
- •Содержательность
- •Достаточность
- •Доступность
- •Актуальность
- •Своевременность
- •Точность
- •Достоверность
- •Устойчивость
- •Защищенность
- •Полезность
- •Информатика
- •Наука информатика
- •Информационные технологии
- •Индустрия информатики
- •Вопросы для самопроверки
- •Глава 2. История создания вычислительной техники
- •Механические счетные машины
- •Электромеханические счетные машины
- •Электронные вычислительные машины
- •Вопросы для самопроверки
- •Глава 3. Эволюция эвм
- •Вопросы для самопроверки
- •Глава 4. Основные классы вычислительных машин
- •Большие компьютеры
- •Серверы и рабочие станции
- •Рабочие станции
- •Серверы
- •Малые компьютеры
- •Микрокомпьютеры
- •Персональные компьютеры
- •Наколенные компьютеры
- •Компьютеры-блокноты (ноутбуки)
- •Нетбуки
- •Планшетные компьютеры
- •Райтеры
- •Электронные книги Ридеры
- •Карманные компьютеры
- •Периферийные устройства кпк
- •Коммуникаторы (смартфоны)
- •Электронные секретари
- •Электронные записные книжки
- •Вычислительные системы
- •Многомашинные и многопроцессорные вс
- •Высокопараллельные многопроцессорные вычислительные системы
- •Ассоциативные и потоковые вс
- •Ассоциативные вычислительные системы
- •Потоковые вычислительные системы
- •Суперкомпьютеры
- •Кластерные суперкомпьютеры
- •Вопросы для самопроверки
- •Раздел 2. «Информационно-логические основы построения эвм» Глава 5. Представление информации в эвм
- •Представление чисел с фиксированной и плавающей запятой
- •Алгебраическое представление двоичных чисел
- •Прочие системы счисления
- •Двоично-десятичная система счисления
- •Шестнадцатеричная система счисления
- •Выполнение арифметических операций в компьютере
- •Особенности выполнения операций над числами с плавающей запятой
- •Выполнение арифметических операций над числами, представленными в дополнительных кодах
- •Особенности выполнения операций в обратных кодах
- •Выполнение арифметических операций в шестнадцатеричной системе счисления
- •Особенности представления информации в пк
- •Вопросы для самопроверки
- •Глава 6. Логические основы построения эвм
- •Основы алгебры логики
- •Логический синтез вычислительных схем
- •Электронные технологии и элементы
- •Полевые транзисторы
- •Планарные микросхемы
- •Электронные и логические схемы
- •Триггер
- •Регистр
- •Дешифратор
- •Логические операции, выполняемые в компьютере
- •Or (или) — логическое сложение
- •Xor (исключающее или)
- •Not (не) — операция отрицания
- •Вопросы для самопроверки
- •Раздел 3 Архитектура персонального компьютера Глава 7. Основные блоки эвм и их назначение
- •Структурная схема эвм
- •Микропроцессор
- •Системная шина
- •Основная память
- •Внешняя память
- •Источник питания
- •Внешние устройства
- •Дополнительные интегральные микросхемы
- •Элементы конструкции пк
- •Функциональные характеристики эвм
- •Производительность, быстродействие, тактовая частота
- •Разрядность микропроцессора и кодовых шин интерфейса
- •Типы системного и локальных и внешних интерфейсов
- •Емкость оперативной памяти
- •Виды накопителей на жестких магнитных дисках
- •Тип и емкость накопителей на гибких магнитных дисках
- •Наличие, виды и емкость кэш-памяти
- •Аппаратная и программная совместимость с другими типами компьютеров
- •Возможность работы в многозадачном режиме
- •Надежность
- •Глава 8. Микропроцессоры
- •Микропроцессоры типа cisc
- •Микропроцессоры Over Drive
- •Микропроцессоры Pentium
- •Микропроцессоры Pentium Pro
- •Микропроцессоры Pentium mmx и Pentium II
- •Микропроцессоры Pentium III
- •Микропроцессоры Pentium 4
- •Эффективные технологии в мп Intel
- •Архитектура Intel Net Burst
- •Многоядерные микропроцессоры
- •Микропроцессоры линейки core
- •Процессоры Core Penryn
- •Микропроцессоры типа risc
- •Микропроцессоры типа vliw
- •Физическая и функциональная структура микропроцессора
- •Устройство управления
- •Арифметико-логическое устройство
- •Микропроцессорная память
- •Универсальные регистры
- •Сегментные регистры
- •Регистры смещений
- •Регистр флагов
- •Статусные флаги
- •Управляющие флаги
- •Интерфейсная часть мп
- •Вопросы для самопроверки
- •Глава 9. Системные платы и чипсеты
- •Разновидности системных плат
- •Чипсеты системных плат
- •Чипсет i965 (Broadwater)
- •Глава 10. Интерфейсная система пк
- •Шины расширений
- •Локальные шины
- •Интерфейсы pci
- •Интерфейс agp
- •Периферийные шины
- •Интерфейсы ide/ata
- •Интерфейс scsi
- •Интерфейс rs 232
- •Интерфейс ieee 1284
- •Универсальные последовательные интерфейсы
- •Последовательная шина usb
- •Стандарт ieee 1394
- •Последовательный интерфейс sata
- •Последовательный интерфейс sas
- •Семейство последовательных интерфейсов pci Express
- •Прикладные программные интерфейсы
- •Беспроводные интерфейсы
- •Интерфейсы IrDa
- •Интерфейс Bluetooth
- •Интерфейс wusb
- •Семейство интерфейсов WiFi
- •Семейство интерфейсов WiMax
- •Интерфейс WiBro
- •Прочие интерфейсы
- •Вопросы для самопроверки
- •Глава 11. Основная память пк
- •Статическая и динамическая оперативная память
- •Основная память
- •Физическая структура основной памяти
- •Оперативные запоминающие устройства
- •Виды модулей оперативной памяти
- •Типы оперативной памяти
- •Постоянные запоминающие устройства
- •Логическая структура основной памяти
- •Вопросы для самопроверки
- •Глава12. Внешние запоминающие устройства
- •Размещение информации на дисках
- •Адресация информации на диске
- •Накопители на жестких магнитных дисках
- •0,85" Винчестеры Toshiba
- •Дисковые массивы raid
- •Накопители на гибких магнитных дисках
- •Накопители на оптических дисках
- •Неперезаписываемые оптические диски cd-rom
- •Оптические диски с однократной записью
- •Оптические диски с многократной записью
- •Оптические универсальные диски dvd
- •Маркировка скоростных характеристик cd и dvd
- •Эффективные технологии хранения информации на cd и dvd
- •Многослойный cd
- •Millipede-диск
- •Флуоресцентные оптические диски
- •Особенности организации флуоресцентных дисков
- •Прочие технологии
- •Накопители на магнитооптических дисках
- •Накопители на магнитной ленте
- •Устройства флэш-памяти
- •Твердотельные накопители на базе флэш-памяти
- •Вопросы для самопроверки
- •Глава 13. Видеотерминальные устройства
- •Видеомониторы на элт
- •Монохромные мониторы
- •Цветные мониторы
- •Виды развертки изображения на мониторе
- •Цифровые и аналоговые мониторы
- •Размер экрана монитора
- •Вертикальная (кадровая) развертка
- •Строчная развертка
- •Разрешающая способность мониторов
- •Частотная полоса пропускания
- •Эргономичность электронно-лучевых мониторов
- •Видеомониторы на плоских панелях
- •Мониторы на жидкокристаллических индикаторах
- •Tmos – мониторы
- •Плазменные мониторы
- •Электролюминесцентные мониторы
- •Светоизлучающие мониторы
- •Мониторы на основе «электронной бумаги»
- •Стереомониторы
- •Видеоконтроллеры
- •Вопросы для самопроверки
- •Глава 14. Внешние устройства пк
- •Клавиатура
- •Графический манипулятор мышь
- •Принтеры
- •Матричные принтеры
- •Струйные принтеры
- •Лазерные принтеры
- •Термопринтеры
- •Твердочернильные принтеры
- •Сервисные устройства
- •Сетевые принтеры
- •С канеры
- •Типы сканеров
- •Форматы представления графической информации в пк
- •Форматы растровой графики
- •Д игитайзеры
- •Основные характеристики дигитайзеров
- •Плоттеры
- •Типы плоттеров
- •Вопросы для самопроверки
- •Глава 15. Средства мультимедиа
- •Системы речевого ввода и вывода информации
- •Системы распознавания речи
- •Системы, ориентированные на распознавание отдельных слов, команд и вопросов
- •Системы распознавания предложений и связной речи
- •Системы идентификации по образцу речи
- •Механизм распознавания речи
- •Системы синтеза речи
- •Компьютерные средства обеспечения звуковых технологий
- •Звуковые платы (карты)
- •Компьютерные средства обеспечения видеотехнологий
- •Вопросы для самопроверки
- •Раздел 4. Компьютерные сети Глава 16. Основы построения компьютерных сетей
- •Классификация и архитектура компьютерных сетей
- •Виды компьютерных сетей
- •Модель взаимодействия открытых систем
- •Локальные вычислительные сети
- •Виды локальных вычислительных сетей
- •Одноранговые локальные сети
- •Серверные локальные сети
- •Корпоративные компьютерные сети
- •Глобальная информационная сеть Интернет
- •Протоколы, используемые в сети
- •Программное обеспечение компьютерных сетей
- •Информационное обеспечение сетей
- •Вопросы для самопроверки
- •Глава 17.Техническое обеспечение компьютерных сетей
- •Серверы и рабочие станции
- •Рабочие станции
- •Серверы
- •Маршрутизаторы и коммутирующие устройства
- •Методы коммутации
- •Коммутация сообщений
- •Коммутация пакетов
- •Методы маршрутизации
- •Варианты адресации компьютеров в сети
- •Методы маршрутизации, используемые в сетях
- •Модемы и сетевые карты
- •Модемы для аналоговых каналов связи
- •Протоколы передачи данных
- •Модемы для цифровых каналов связи
- •Сетевые карты
- •Линии и каналы связи
- •Цифровые каналы связи
- •Раздел 5. Программное управление Глава 18. Программное управление — основа автоматизации вычислительного процесса После изучения главы вы должны знать:
- •Алгоритмы и языки программирования
- •Состав машинных команд
- •Пример программы на яск
- •Программное обеспечение компьютера
- •Системное программное обеспечение
- •Операционные системы компьютеров
- •Прикладное программное обеспечение
- •Прикладные программы для офиса
- •Корпоративные прикладные программы
- •Режимы работы компьютеров
- •Однопрограммный режим
- •Многопрограммный режим
- •Система прерываний программ в пк
- •Адресация регистров и ячеек памяти в пк
- •Относительная адресация
- •Стековая адресация
- •Вопросы для самопроверки
- •Глава 19.Элементы программирования на языке Ассемблер
- •Основные компоненты языка ассемблер Алфавит языка
- •Константы (числа и строки) Только целые числа
- •Строки (литералы)
- •Команды (операторы)
- •Директивы (псевдооператоры)
- •Модификаторы
- •Адресация регистров и ячеек памяти в Ассемблере
- •Непосредственная адресация
- •Прямая адресация регистров мпп
- •Адресация ячеек оп
- •Основные команды языка ассемблер
- •Команды пересылки данных
- •Арифметические команды
- •Команды сложения, вычитания и сравнения
- •Команды приращения
- •Команды умножения
- •Команды деления
- •Логические команды
- •Команды безусловной передачи управления
- •Команды перехода к подпрограмме и выхода из подпрограммы
- •Команда перехода к подпрограмме: call opr
- •Команда выхода из подпрограммы
- •Команды условной передачи управления
- •Команды условной передачи управления для беззнаковых данных
- •Команды условной передачи управления для знаковых данных
- •Команды условной передачи управления для прочих проверок
- •Команды управления циклами
- •Команды прерывания
- •Основные директивы ассемблера
- •Директивы определения идентификаторов
- •Директивы определения данных
- •Директивы определения сегментов и процедур
- •Директивы управления трансляцией
- •Программирование процедур работы с устройствами ввода-вывода
- •Программирование работы с дисплеем
- •Видеооперации с прерыванием 21h dos
- •Программирование работы с клавиатурой
- •Некоторые аспекты создания исполняемых программ
- •Процедуры формирования программы
- •Структура программы на языке ассемблера для создания файла exe
- •Программа вычисления квадратного корня
- •Основные сведения о листинге программы
- •Последовательность работы пк при выполнении программы
- •Краткие сведения об отладчике программ debug
- •Основные команды отладчика debug
- •Вопросы для самопроверки
- •Заключение. Перспективы развития информационных систем
- •Литература
Процедуры формирования программы
Последовательность процедур формирования программы показана на рис. 19.1.
Рис. 19.1. Последовательность процедур формирования программы
Составление программы и ее ввод и сохранение в виде текстового файла диске). При вводе программы используется текстовый редактор (удобнее использовать редактор, формирующий файлы с расширением .txt, например встроенный редактор FAR Edit или Norton Edit).
Трансляция (ассемблирование) программы. При запуске транслятора MASM вводится строка вида:
MASM c:prog.asm или просто MASM
Появится запрос: Surce filename [.asm].
Следует указать путь к файлу и имя исходного файла, если оно не было указано ранее.
В ответ на запрос Object filename [prog.obj] ввести имя объектной программы (объектного модуля), если оно отличается от имени исходного файла (иначе следует нажать клавишу Enter).
Если нужен листинг программы в машинных кодах, в ответ на Source listing [nul.lst] укажите местоположение и имя формируемого файла, иначе нажмите клавишу Enter. Для получения листинга перекрестных ссылок программы в ответ на Cross-reference [nul.crf] укажите местоположение и имя формируемого файла, иначе нажмите клавишу Enter.
Листинг — распечатка, файл для распечатки; листинг программы содержит программу исходную и в машинных кодах, а также обнаруженные при трансляции ошибки в программе. Листинг перекрестных ссылок показывает имена переменных и номера строк программы, где эти переменные используются.
Компоновка объектного модуля (загрузка и редактирование связей).
Вводится: LINK c:prog.obj или просто LINK.
Появится запрос: Object modules [.obj]. Следует указать имя файла .OBJ, если оно не было указано ранее.
Следующий запрос: Run file [prog.exe]; если имя исполняемой программы другое, то следует его ввести, иначе Enter.
List file [nul.map], следует нажать клавишу Enter, но если необходима дополнительная информация можно ввести CON; MAP-файл содержит таблицу имен и информацию о размере сегментов, а также ошибки, обнаруженные при загрузке; ввод CON означает требование вывода их на экран дисплея.
Запрос Libraries [.lib]: нажмите Enter, если при сборке дополнительных библиотек связей не требуется.
Отладка программы (при необходимости). Можно использовать отладчик DEBUG. Вызов отладчика DEBUG: DEBUG c:prog.exe
(в ОС Windows 7. Home.программы DEBUG нет).
Выполнение программы.
При наличии в командной строке приглашения к работе ввести имя программы: c:prog[.exe].
Структура программы на языке ассемблера для создания файла exe
Операционная система MS DOS предъявляет некоторые обязательные требования к структуре ASM-программы, предназначенной для последующего создания EXE-файла.
Программа может использовать 4 сегмента памяти, начальные адреса которых должны быть загружены в регистры микропроцессора CS, SS, DS и ES, а сами сегменты в явном виде определены в программе в виде операторных скобок: имя_сегмента segment ... имя_сегмента ends (версии MS DOS 4.0 и выше допускают более простое указание сегментов в программе: имя_сегмента.).
В программе должно быть указание, какие сегментные регистры закрепляются за используемыми сегментами памяти; при исполнении программы сегментные регистры CS, SS, ES в соответствии с этими указаниями загружаются автоматически.
Сегмент данных DS в EXE-программе не может быть загружен автоматически, поскольку он используется программным загрузчиком для формирования начального адреса служебной области памяти — префикса программного сегмента (PSP), непосредственно предшествующего любой исполняемой программе. Регистр сегмента данных DS должен быть инициирован принудительно — для этого следует в самом начале ASM-программы записать в стек вектор-адрес возврата к служебной области PSP: содержимое регистра DS и нулевое смещение, а затем в регистр DS загрузить адрес сегмента данных. PSP — это группа служебных слов в оперативной памяти, формируемая для каждой загружаемой программы пользователя и занимающая обычно 256 байтов (100h). При запуске программы пользователя в ОЗУ автоматически формируется PSP, и ее начальный адрес помещается в регистр DS.
Обеспечение после завершения выполнения программы возврата к префиксу программного сегмента; проще всего это можно сделать, оформив обращение к исполняемой программе в виде обращения к процедуре (главной процедуре, обязательно с атрибутом far) и поместив в конце программы команду возврата ret (выход из программы можно выполнить также, используя прерывание 20H DOS или функцию 4Ch прерывания 21H DOS, но управление при этом передается не в PSP, а непосредственно в резидентную часть программы COMMAND.COM).
Типовая структура ASM-программы включает в себя:
Имя программы
TITLE prog.ASM
Может присутствовать комментарий назначения программы.
Инициализацию стековой памяти в сегменте стека:
STACKSEG segment stack
DW N dup(?) ; меньше 32 слов в стеке обычно задавать не следует
STACKSEG ends
Инициализацию всех переменных в сегменте данных:
DATASEG segment
; задаются имена всех констант и переменных,
; их начальные значения и резервируется память под них
DATASEG ends
Назначение сегментных регистров в сегменте кодов:
CODESEG segment
Assume CS:codeseg, DS:dataseg, SS:stackseg
Организацию главной программной процедуры far:
MAIN proc far
Запись адреса префикса программного сегмента (PSP) в стек:
push DS
sub AX, AX
push AX
Инициализацию содержимого регистра сегмента данных:
mov AX, dataseg
mov DS, AX
; при указании в команде в качестве операнда символического
; имени сегмента (dataseg) происходит пересылка начального адреса этого сегмента — неверно указывать offset dataseg
Текст программы пользователя в сегменте кодов:
основной текст программы
Восстановление адреса PSP в DS:
ret
Тексты процедур; если имеются процедуры near, используемые в данной программе, то записываются тексты этих процедур.
Закрытие главной процедуры main, сегмента кодов и выход из программы:
MAIN endp
CODESEG ends
end MAIN
Итак, обобщенная структура программы:
title prog.asm
stackseg segment
; задание поля памяти для стека
stackseg ends
dataseg segment
; задание полей памяти для данных и определение всех констант и переменных
dataseg ends
codeseg segment
assume CS:codeseg, DS:dataseg, SS:stackseg
main proc far
push DX
sub AX, AX
push AX
mov AX, dataseg
mov DS, AX
; основной текст программы
; ...
ret
; тексты ближних процедур
main endp
codeseg ends
end main
В качестве примера рассмотрим программу вычисления квадратного корня..
На рис. 19.2 приводится алгоритм решения задачи.
Рис.19.2. Алгоритм вычисления квадратного корня.