- •Базовая структура компьютера
- •Процессор, оперативная память, устройства ввода-вывода, внешняя память, шины.
- •Представление информации. Целые, вещественные, символьные данные.
- •Структуры машинных команд. Трех-, двух-, одноадресные системы команд процессоров.
- •Стек. Его использование и аппаратная поддержка.
- •Risc-процессоры.
- •Cisc-процессоры. Микрокомандный уровень архитектуры.
- •Пример базовой архитектуры - pdp-11
- •Структура процессора. Регистры и их назначение.
- •2.2. Архитектура с общей шиной. Адресное пространство.
- •2.3. Форматы команд.
- •2.3.1. Двух-, одно- и безадресные команды. Примеры
- •2.3.2. Организация ветвлений и циклов. Регистр состояния процессора.
- •2.4. Методы адресации.
- •2.4.1 Прямые методы адресации.
- •2.4.2. Косвенные методы адресации.
- •2.4.3. Использование счетчика команд и указателя стека в методах адресации.
- •2.4.4. Позиционно-независимые программы и методы адресации.
- •2.5. Организация ввода-вывода.
- •2.5.1. Контроллеры устройств. Регистры устройств и их адресация.
- •2.5.2. Ввод-вывод по опросу флага готовности.
- •2.5.3. Прерывания устройств и их обработка.
- •2.5.4. Система приоритетов в обработке прерываний.
- •2.5.5. Ввод-вывод с использованием механизма прерываний.
- •2.5.6. Устройства с блочной передачей данных.
- •2.5.7. Прямой доступ к памяти и его использование для ввода-вывода.
- •2.6. Синхронные прерывания (исключительные ситуации) и их обработка.
- •3. Шинная архитектура
- •3.1 Структура шин. Подшины адреса, данных, управления. Ширина шины.
- •3.2. Синхронизация шины. Синхронные и асинхронные шины.
- •3.3. Временные диаграммы операций обмена по шинам.
- •3.4 Арбитраж шины.
Представление информации. Целые, вещественные, символьные данные.
В компьютере информация представлена в виде двоичного кода, т.е. в виде последовательности из нулей и единиц. Один двоичный разряд позволяет представить минимальную порцию информации, равную одному биту. Восемь двоичных разрядов образуют байт. Шестнадцать двоичных разрядов образуют слово, состоящее, в свою очередь, из младшего (правого) и старшего (левого) байтов.
Последовательность двоичных разрядов может быть использована для кодирования различных видов информации.
Логическая информация. В этом случае два состояния каждого двоичного разряда представляют собой одно из состояний логической переменной – true (истина) или false (ложь).
Символьная информация. Для кодирования символов какого-либо алфавита используется определенное количество двоичных разрядов. Набор из n двоичных разрядов позволяет представить алфавит из 2^n символов. Обычно для кодирования символов используется байт. Т.о. с помощью байта можно кодировать символы алфавита, состоящего из 2^8 = 256 различных символов. Для кодирования символов используются различные кодировки (кодовые таблицы) соответствия двоичных кодов конкретным символам: ASCII, КОИ8, DOC, Windows и др.
Числовая информация. Для представления чисел в ЭВМ была выбрана двоичная система счисления. Эта система использует только две цифры – 0 и 1. Также иногда используются восьмеричная и шестнадцатеричная системы. Двоичный код представляет собой ту или иную форму чисел (без знака и со знаком, целое, дробное с фиксированной или плавающей точкой).
Один двоичный разряд позволяет представить минимальную часть информации, равную одному биту. Восемь двоичных разрядов образуют байт. Шестнадцать двоичных разрядов образуют слово, состоящее из младшего (правого) и старшего (левого) байта.
Общепринятой на практике формой представления чисел является использование позиционной системы счисления. В позиционной системе счисления значимость каждой цифры, составляющей число, определяется его позицией внутри числа. В соответствии со своей позицией каждая цифра числа умножается на коэффициент. Представляющий собой так называемое основание системы счисления, возведенное в степень, равную номеру позиции данной цифры слева направо.
Представление в ЭВМ целых двоичных чисел без знака
Обычной моделью представления целых чисел в ЭВМ является бесконечная числовая ось, на которой при движении слева направо числа последовательно увеличиваются на единицу. Так как для представления чисел используется конечное число разрядов, то и все множество представимых в ЭВМ чисел является конечным. Т. е. числовая ось как бы замыкается сама на себя.
В аппаратных средствах ЭВМ, оперирующих с двоичными числами с конечным числом разрядов, имеются физические элементы для представления и отображения только этих разрядов. Поэтому операция прибавления единицы к наибольшему представимому в данном примере числу 1111 приведет к числу 0000.
Представление в ЭВМ целых чисел со знаком
Обычно для представления отрицательных чисел в ЭВМ используют так называемый двоично-дополнительный код.
Алгоритм получения двоично-дополнительного кода отрицательного числа из соответствующего ему положительного числа достаточно прост. Вначале следует проинвертировать все разряды исходного положительного числа, т. е. заменить в нем все нули на единицы, а единица на нули, после чего к результату прибавить единицу.
Свойства такого представления:
Положительные числа представляются в обычной форме
У всех положительных чисел старший разряд равен 0, а у отрицательных – 1
При переходе по часовой стрелке по замкнутой числовой оси каждое последующее число больше предыдущего на 1
Сумма положительного и соответствующего отрицательного чисел равно 0
Важным доводом в пользу такого представления является то, что операция вычитания может быть заменена сложением.
Для реализации блока ЭВМ, осуществляющего арифметические операции над двоичными числами, принципиальным является реализация именно устройства сложения (сумматора).
Особенности сложения двоичных чисел со знаком и без
Если при сложении двоичных чисел без знака происходит перенос из старшего разряда, то результат арифметической операции оказывается неправильным.
Если при сложении двух двоичных чисел со знаком, представленных в двоично-дополнительном коде, происходит перенос в старший разряд или перенос из старшего разряда (арифметическое переполнение), то результат операции получается неверным. Однако, если переносов нет или имеют место одновременно оба таких переноса, то результат операции верный.
Представление в ЭВМ вещественных чисел
Вещественные числа обычно представляются в виде чисел с плавающей точкой. Число с плавающей точкой состоит из набора отдельных двоичных разрядов, условно разделенных на так называемые знак, порядок и мантиссу. В наиболее распространённом формате число с плавающей точкой представляется в виде набора битов, часть из которых кодирует собой мантиссу числа, другая часть — показатель степени, и ещё один бит используется для указания знака числа (0 - если число положительное, 1 - если число отрицательное). При этом порядок записывается как целое число в коде со сдвигом.
При использовании кода со сдвигом целочисленный отрезок от нуля до 2^n (n — количество бит) сдвигается влево на 2^n-1, а затем получившиеся на этом отрезке числа последовательно кодируются в порядке возрастания кодами от 000...0 до 111...1. Например, число −5 в восьмибитном типе данных, использующем код со сдвигом, превратится в −5 + 128 = 123, то есть будет выглядеть так: 01111011.), а мантисса – в нормализованном виде (т.е. мантисса должна быть правильной дробью, первая цифра которой отлична от нуля: M ∈ [0.1, 1).
Символьные данные хранятся в памяти ПК в виде двоичных кодов. Как правило, используются 8-разрядные коды символов. Конкретное соответствие между символами и их кодами называется системой кодировки. В ПК используется система кодировки ASCII (American Standard Code for Information Interchange - американский стандартный код для обмена информации).
