Логические элементы компьютера: вентили, триггеры, счетчики, регистры
Логический вентиль (далее – просто вентиль) – это своего рода атом, из которого состоят электронные узлы ЭВМ. Он работает по принципу крана (отсюда и название), открывая или закрывая путь сигналам. Логические схемы предназначены для реализации различных функций алгебры логики и реализуются с помощью трех базовых логических элементов (вентилей, логических схем или так называемых переключательных схем). Они воспроизводят функции полупроводниковых схем. Работу вентильных, логических схем мы, как и принято, будем рассматривать в двоичной системе и на математическом, логическом уровне, не затрагивая технические аспекты (аспекты микроэлектроники, системотехники, хотя они и очень важны в технической информатике). Логические функции отрицания, дизъюнкции и конъюнкции реализуют, соответственно, логические схемы, называемые инвертором, дизъюнктором и конъюнктором.
2.Тригерры Устройство, имеющее два устойчивых состояния, называют триггером. Он имеет два выхода, один из них называют прямым, а другой — инверсным. Потенциалы на них взаимно инвертированы: лог. 1 на одном выходе соответствует лог. 0 на другом. С приходом переключающих (запускающих) сигналов переход триггера из одного состояния в другое происходит лавинообразно, и потенциалы на выходах меняются на противоположные. В интервале между переключающими сигналами состояние триггера не меняется, т. е. триггер "запоминает" поступление сигналов, отражая это величиной потенциала на выходе. Это дает возможность использовать его как элемент памяти. При лавинообразных переключениях на выходе триггера формируются прямоугольные импульсы с крутыми фронтами. Это позволяет использовать триггер для формирования прямоугольных импульсов из напряжения другой формы (например, из синусоидального).
При двух последовательных переключениях триггера на выходе формируется один импульс, т.е. триггер можно использовать как делитель частоты переключающих сигналов с коэффициентом, равным двум. Триггеры можно разделить на не тактируемые и тактируемые. Не тактируемый (асинхронный) триггер может менять свое состояние переключающими сигналами в любое время. Тактируемый (синхронный) триггер переключается синхронно с поступлением специального тактирующего импульса. Эти и другие типы триггеров, показанные в таблице классификации, подробно рассмотрены далее. Промышленность выпускает разнообразные типы триггеров в интегральном исполнении. Кроме того, они могут быть выполнены на цифровых интегральных микросхемах, операционных усилителях и на транзисторах.
3.Счетчики. Почти каждая сложная цифровая система содержит несколько счетчиков. Назначение счетчика очевидно: это подсчет числа некоторых событий или временных интервалов, либо упорядочение событий в хронологической последовательности. Кроме того, счетчики могут выполнять и не столь очевидные функции: их, например, можно использовать для адресации, в качестве делителей частоты и элементов памяти. Цифровую схему, выполняющую функции счета, можно собрать из триггеров. В связи с очень широким применением таких схем фирмы-изготовители выпускают счетчики в виде монолитных ИС.
4.Регистр (цифровая техника) — последовательностное логическое устройство, используемое для хранения n-разрядных двоичных чисел и выполнения преобразований над ними.
Регистр представляет собой упорядоченную последовательность триггеров, число которых соответствует числу разрядов в слове. С каждым регистром обычно связано комбинационное цифровое устройство, с помощью которого обеспечивается выполнение некоторых операций над словами.
Фактически любое цифровое устройство можно представить в виде совокупности регистров, соединённых друг с другом при помощи комбинационных цифровых устройств.
13.Представление данных в памяти ПК. Представление данных в памяти персонального компьютера (числа, символы, графика, звук). Вся информация , которую обрабатывает компьютер, должна быть представлена двоичным кодом с помощью двух цифр — 0 и 1. Эти два символа принято называть двоичными цифрами, или битами. С помощью двух цифр 1 и 0 можно закодировать любое сообщение. Это явилось причиной того, что в компьютере обязательно должно быть организовано два важных процесса: · кодирование, которое обеспечивается устройствами ввода при преобразовании входной информации в форму, воспринимаемую компьютером, то есть в двоичный код; · декодирование, которое обеспечивается устройствами вывода при преобразовании данных из двоичного кода в форму, понятную человеку. С точки зрения технической реализации использование двоичной системы счисления для кодирования информации оказалось намного более простым, чем применение других способов. Действительно, удобно кодировать информацию в виде последовательности нулей и единиц, если представить эти значения как два возможных устойчивых состояния электронного элемента: · 0 — отсутствие электрического сигнала или сигнал имеет низкий уровень; · 1 — наличие сигнала или сигнал имеет высокий уровень. Эти состояния легко различать. Недостаток двоичного кодирования — длинные коды. Но в технике легче иметь дело с большим числом простых элементов, чем с небольшим количеством сложных. Вам и в быту ежедневно приходится сталкиваться с устройством, которое может находиться только в двух устойчивых состояниях: включено/выключено. Конечно же, это хорошо знакомый всем выключатель. А вот придумать выключатель, который мог бы устойчиво и быстро переключаться в любое из 10 состояний, оказалось невозможным. В результате после ряда неудачных попыток разработчики пришли к выводу о невозможности построения компьютера на основе десятичной системы счисления. И в основу представления чисел в компьютере была положена именно двоичная система счисления. В настоящее время существуют разные способы двоичного кодирования и декодирования информации в компьютере. В первую очередь это зависит от вида информации, а именно, что должно кодироваться: текст, числа, графические изображения или звук. Кроме того, при кодировании чисел важную роль играет то, как они будут использоваться: в тексте, в расчетах или в процессе ввода-вывода. Накладываются также и особенности технической реализации. Кодирование чисел Система счисления — совокупность приемов и правил записи чисел с помощью определенного набора символов. Для записи чисел могут использоваться не только цифры, но и буквы (например, запись римских цифр — XXI). Одно и то же число может быть по-разному представлено в различных системах счисления. В зависимости от способа изображения чисел системы счисления делятся на позиционные и непозиционные. В позиционной системе счисления количественное значение каждой цифры числа зависит от того, в каком месте (позиции или разряде) записана та или иная цифра этого числа. Например, меняя позицию цифры 2 в десятичной системе счисления, можно записать разные по величине десятичные числа, например 2; 20; 2000; 0,02 и т. д. В непозиционной системе счисления цифры не изменяют своего количественного значения при изменении их расположения (позиции) в числе. Примером непозиционной системы может служить римская система, в которой независимо от местоположения одинаковый символ имеет неизменное значение (например, символ X в числе XXV). Количество различных символов, используемых для изображения числа в позиционной системе счисления, называется основанием системы счисления. В компьютере наиболее подходящей и надежной оказалась двоичная система счисления, в которой для представления чисел используются последовательности цифр 0 и 1. Кроме того, для работы с памятью компьютера оказалось удобным использовать представление информации с помощью еще двух систем счисления: · восьмеричной ( любое число представляется с помощью восьми цифр — 0, 1, 2... 7); · шестнадцатеричной (используемые символы-цифры — 0, 1, 2... 9 и буквы — А, В, С, D, Е, F, заменяющие числа 10, 11, 12, 13, 14, 15 соответственно). Кодирование символьной информации Нажатие алфавитно-цифровой клавиши на клавиатуре приводит к тому, что в компьютер посылается сигнал в виде двоичного числа, представляющего собой одно из значений кодовой таблицы. Кодовая таблица - это внутреннее представление символов в компьютере. Во всем мире в качестве стандарта принята таблица ASCII (American Standart Code for Informational Interchange - американский стандартный код информационного обмена). Для хранения двоичного кода одного символа выделен 1 байт = 8 бит. Учитывая, что каждый бит принимает значение 1 или 0, количество возможных сочетаний единиц и нулей равно 28 = 256. Значит, с помощью 1 байта можно получить 256 разных двоичных кодовых комбинаций и отобразить с их помощью 256 различных символов. Эти коды и составляют таблицу ASCII. Пример, при нажатии клавиши с буквой S в память компьютера записывается код 01010011. При выводе буквы 8 на экран компьютер выполняет декодирование — на основании этого двоичного кода строится изображение символа. SUN (СОЛНЦЕ) - 01010011 010101101 01001110 Стандарт ASCII кодирует первые 128 символов от 0 до 127: цифры, буквы латинского алфавита, управляющие символы. Первые 32 символа являются управляющими и предназначены в основном для передачи команд управления. Их назначение может варьироваться в зависимости от программных и аппаратных средств. Вторая половина кодовой таблицы (от 128 до 255) американским стандартом не определена и предназначена для символов национальных алфавитов, псевдографических и некоторых математических символов. В разных странах могут использоваться различные варианты второй половины кодовой таблицы. Обратите внимание! Цифры кодируются по стандарту ASCII записываются в двух случаях - при вводе-выводе и когда они встречаются я тексте. Если цифры участвуют в вычислениях, то осуществляется их преобразование в другой двоичный код. Для сравнения рассмотрим число 45 для двух вариантов кодирования. При использовании в тексте это число потребует для своего представления 2 байта, поскольку каждая цифра будет представлена своим кодом в соответствии с таблицей ASCII . В двоичной системе - 00110100 00110101. При использовании в вычислениях код этого числа будет получен по специальным правилам перевода и представлен в виде 8-разрядного двоичного числа 00101101, на что потребуется 1 байт. Кодирование графической информации Создавать и хранить графические объекты в компьютере можно мя способами — как растровое или как векторное изображение. Для каждого типа изображения используется свой способ кодирования. Растровое изображение представляет собой совокупность точек, используемых для его отображения на экране монитора. Объем растрового изображения определяется как произведение количества точек и информационного объема одной точки, который зависит от количества возможных цветов. Для черно-белого изображения информационный объем одной точки равен 1 биту, так как точка может быть либо черной, либо белой, что можно закодировать двумя цифрами — 0 или 1. Для кодирования 8 цветов необходимо 3 бита; для 16 цветов — 4 бита; для 256 цветов — 8 битов (1 байт) и т.д. Векторное изображение представляет собой совокупность графических примитивов. Каждый примитив состоит из элементарных отрезков кривых, параметры которых (координаты узловых точек, радиус кривизны и пр.) описываются математическими формулами. Для каждой линии указываются ее тип (сплошная, пунктирная, штрих-пунктирная), толщина и цвет, а замкнутые фигуры дополнительно характеризуются типом заливки. Кодирование векторных изображений выполняется различными способами в зависимости от прикладной среды. В частности, формулы, описывающие отрезки кривых, могут кодироваться как обычная буквенно-цифровая информация для дальнейшей обработки специальными программами. Кодирование звуковой информации Звук представляет собой звуковую волну с непрерывно меняющейся амплитудой и частотой. Чем больше амплитуда сигнала, тем он громче для человека, чем больше частота сигнала, тем выше тон. Для того чтобы компьютер мог обрабатывать звук, непрерывный звуковой сигнал должен быть превращен в последовательность электрических импульсов (двоичных нулей и единиц). В процессе кодирования непрерывного звукового сигнала производится его временная дискретизация. Непрерывная звуковая волна разбивается на отдельные маленькие участки, причем для каждого такого участка устанавливается определенная величина амплитуды.Таким образом, непрерывная зависимость амплитуды сигнала от времени заменяется на дискретную последовательность уровней громкости. Современные звуковые карты обеспечивают 16-битную глубину кодирования звука. В таком случае количество уровней сигнала будет равно 65536. При двоичном кодировании непрерывного звукового сигнала он заменяется последовательностью дискретных уровней сигнала. Качество кодирования зависит от количества измерений уровня сигнала в единицу времени, т.е. от частоты дискретизации. Чем больше количество измерений производится за 1 секунду (чем больше частота дискретизации), тем точнее процедура двоичного кодирования. |