Шпаргалка: Ответы на вопросы по курсу “Системное программирование”
Процессор использует установленный набор сигналов для связи с памятью и для связи с внешними устройствами, благодаря чему в системе отсутствуют специальные команды ввода-вывода.
Все устройства комплекса подключаются в ОШ по единому принципу. Некоторым регистрам процессора, регистрам внешних устройств, которые являются источниками или приемниками при передачи информации, на ОШ отводятся адреса. В программах адреса регистров устройств рассматриваются как адреса ячеек памяти, что позволяет обращаться к ним с помощью адресных инструкций. Так, программирование операций вывода данных на внешнее устройство практически сводится к пересылке этих данных по определенному адресу.
VAX – 11 – более развитая машина, чем PDP-11. Это 32-битовая машина с адресным пространством свыше 4Г. Она по архитектуре похожа на PDP-11, но имеет 2 шинных адаптера – адаптер общей шины и адаптер массовой шины. Все совместимые с общей шиной периферийные устройства могут быть подключены к ней, тогда как высокоскоростные устройства могут быть подключены к массовой шине через собственные контроллеры. VAX – сокр. от английских слов “виртуальное адресное расширение”, т.е. машина имеет виртуальную память и многозадачность.
Обычно персональные компьютеры IBMPC состоят из трех частей : - системного блока;
- клавиатуры;
- дисплея.
Системный блок содержит все основные узлы компьютера :
- электронные схемы, управляющие работой компьютера (микропроцессор, оперативная память, контроллеры устройств и т.д.);
- блок питания;
- накопители для гибких магнитных дисков;
- накопитель на жестком магнитном диске.
К системному блоку можно подключить ряд дополнительных устройств ввода - вывода. Кроме клавиатуры и монитора такими устройствами являются:
- принтер - для вывода на печать текстовой и графической информации;
- мышь - устройство, облегчающее ввод информации в компьютер;
- стример - для хранения данных на магнитной ленте;
- модем - для обмена информацией с другими компьютерами через телефонную сеть;
- сканер - прибор для ввода рисунков и текстов в компьютер.
Двоичное кодирование информации. Представление элементарных типов данных: натуральные числа, целые числа со знаком, числа с плавающей точкой.
Состояния “установлен” и “сброшен” соотв. 2 цифрам двоичной системы счисления, фундаментальной для ЭВМ. Эти цифры называются битами. Двоичное кодирование – представление данных последовательностью битов. При двоичном кодировании числовой информации степень двойки при каждой двоичной цифре на единицу больше, чем у предшествующей цифры. Пример конструкции двоичного кода: 1012 =(1*22 )+(0*21 )+(1*20 )=510 .
Таким образом осуществляется представление целых чисел без знака. Отрицательные числа со знаком представляются в дополнительном коде – в форме дополнения до двух. Чтобы найти двоичное представление отрицательного числа, надо взять его полжительную форму, проинвертировать ее и добавить к полученному результату 1.
Числами с плавающей точкой называются числа вида x=M*Pq , где М – мантисса, P – порядок, q – основание системы счисления. Нормализованная форма таких чисел:
M – дробное, |M| < 1.
Q – фиксировано.
P – целое число со знаком.
В машине в двоичных кодах хранится M и P. Порядок, как правило, выравнивается, т.е. приводится к большему по модулю порядку, путем сдвига мантиссы вправо с меньшим порядком на кол-во разрядов, равное (Pmax-Pmin)log2 Q.
Правила арифметических и логических операций с элементарными типами данных.
Свойства точности вычислений при работе с плавающей точкой. Приемы программирования, обеспеч. необходимую точность вычислений.
При работе с плавающими числами следует иметь в виду, что результат не полностью соответствует арифметике действительных чисел. Диапазон представления чисел: -1*Qp <x<1*Qp . Для этих чисел понятие абсолютной точности заменяется на понятие относительная точность – это минимальное число x, при котором R*(1+x) будет иметь другой код, чем число R. Потеря точности связана с ситуацией поглощения меньших операндов большими, которая в свою очередь связана с фиксированным размером мантиссы. Способ увеличения точности – увеличение размера мантиссы (числа одинарной, двойной, повышенной точности в языках высокого уровня). При программировании операций с плавающей точкой многих проблем можно избежать, если правильно подобрать необходимые программисту типы данных в зависимости от размерности и точности предполагаемо обрабатываемых вещественных чисел. Некоторые ситуации приводят к ошибкам обработки таких чисел:
а) Поглощение меньших операндов большими.
б) Ситуация потери точности (lostprecision). Данный эффект проявляется, когда вычитаются 2 почти одинаковых числа.
в) Ситуация переполнения. В результате операции порядок превышает максимально допустимое значение.
г) Ситуация обратная переполнению (underflow) – если порядок становится меньше минимального значения.