Кодирование информации в ЭВМ
Для представления символьной информации в двоичной форме используются таблицы кодировки. Код (от лат. codex) – система условных знаков (символов, обозначений) для представления различной информации.
При длине кода один байт (8 бит) можно закодировать 256 (т.е. 28) различных символов. Этого достаточно для кодирования символов любого национального алфавита, но недостаточно, чтобы представить в одной таблице символы всех алфавитов.
Уровня международного стандарта достигла система ASCII (American Standard Code for Information Interchange – Американский стандартный код для обмена информацией). Эта система устанавливает две таблицы кодирования: базовую и расширенную. В базовой таблице (табл. 5) закреплены значения кодов от 0 до 127. Первые 32 кода являются управляющими, они предназначены для управления устройствами вывода данных и определяются производителями. Большинство значений кодов базовой таблицы ASCII представлено в таблице 5.
Таблица 5
Базовая таблица кодировки ASCII
7 beep (звуковой сигнал) | % | C | R | a | p | ||||||||
& | D | S | b | q | |||||||||
8 backspace (удаление предыдущего символа) | ' | E | T | c | r | ||||||||
( | F | U | d | s | |||||||||
) | G | V | e | t | |||||||||
9 tab (табуляция) | * | H | W | f | u | ||||||||
10 linefeed (перевод строки) | + | : | I | X | g | v | |||||||
, | ; | J | Y | h | w | ||||||||
13 carriage return (возврат каретки) | - | < | K | Z | i | x | |||||||
. | = | L | [ | j | y | ||||||||
32 space (пробел) | / | > | M | \ | k | z | |||||||
! | ? | N | ] | l | { | ||||||||
« | @ | O | ^ | m | | | ||||||||
# | A | P | _ | n | } | ||||||||
$ | B | Q | ` | o | ~ |
Расширенная таблица определяет значения кодов с 128 по 255 и используется национальными системами кодирования. Например, в России наибольшее распространение получили три разных системы: альтернативная (на компьютерах, работающих в операционной системе MS-DOS); Windows-1251; КОИ-8 (код обмена информации, восьмизначный).
В настоящее время всё большее распространение получает универсальная система кодирования Юникод (англ. Unicode). В ней используется шестнадцатиразрядный код, позволяющий представить 65 536 (то есть 216) символов. Этого достаточно для кодирования символов большинства языков планеты. Однако текст в Юникоде занимает вдвое больший объём в памяти ЭВМ или на машинном носителе информации, по сравнению с этим же текстом в кодировке ASCII или любой другой восьмиразрядной системе кодирования.
Существует множество способов представления графики, звука, видео, других видов данных и их совокупностей, и оно постоянно расширяется.
Растровая графика использует RGB, CMY, HSВ модели глубиной до 32 бит на пиксель. Векторная графика не имеет проблем с масштабированием, но неудобна для фотоизображений. Среди методов кодирования звуковой информации можно выделить два основных подхода: частотной модуляции (FM – Frequency Modulation), использующего АЦП и ЦАП, и таблично-волнового синтеза (Wave Table), использующего образцы звуков музыкальных инструментов.
Таким образом, многообразие систем кодирования ставит одну из важнейших задач информатики – задачу межсистемного преобразования данных.
2.7 Вопросы и тестовые задания для самоконтроля
1. Назовите символы, из которых состоит внутренняя азбука компьютера.
2. Что собой представляет ячейка памяти компьютера?
3. Дайте определение системам счисления.
4. Дайте определение позиционной системе счисления.
5. Дайте определение непозиционной системе счисления.
6. Что называется основанием системы счисления?
7. Какие системе счисления применяются в информатике?
8. В какой системе счисления кодируется информация в памяти компьютера
9. Сколько различных состояний можно запомнить с помощью одного байта?
10. Что такое таблица ASCII?
11. Одна страница текста содержит 50 строк по 60 символов в каждой. Чему равен объём информации, содержащийся в пяти таких страницах текста при использовании таблицы кодировки ASCII?
12. Как записать число (27)10 в двоичной системе счисления, в восьмеричной системе счисления, в шестнадцатеричной системе счисления?
13. Правильной записью числа в пятеричной системе счисления является:
1) 10340;
2) 25;
3) 1A002;
4) 102611.
14. Укажите упорядоченную по убыванию последовательность значений.
1) 5516 558 557;
2) 558 557 5516;
3) 558 5516 557;
4) 557 558 5516.
15. Укажите правильную запись десятичного числа 5 в указанной (в скобках) системе счисления
1) 123;
2) 124;
3) 125;
4) 126.
16. Что такое двоичная арифметика?
вернуться к содержанию
ЛОГИЧЕСКИЕ ОСНОВЫ ПОСТРОЕНИЯ ЭВМ
Для понимания логических принципов функционирования ЭВМ нужно знать не только основы двоичной системы счисления, но и азы алгебры логики. Этой теме посвящен данный раздел.
Основы алгебры логики
Слово «логика» означает как совокупность правил, которым подчиняется процесс мышления, так и науку о правилах рассуждений. Логика как наука о законах и формах мышления изучает абстрактное мышление как средство познания объективного мира.
Основными формами абстрактного мышления являются:
- понятия;
- суждения;
- умозаключения.
Понятие – форма мышления, в которой отражаются существенные признаки отдельного предмета или класса однородных предметов, например: «портфель»; «трапеция»; «ветер».
Суждение – мысль, в которой что-либо утверждается или отрицается о предметах. Суждения являются истинными или ложными повествовательными предложениями. Они могут быть простыми и сложными. Например: «Весна наступила»; «Грачи прилетели»; «Весна наступила, и грачи прилетели».
Умозаключение – приём мышления, посредством которого из исходного знания получается новое знание; из одного или нескольких истинных суждений, называемых посылками, мы по определённым правилам вывода получаем заключение.
Все металлы – простые вещества.
Литий – металл.
Литий – простое вещество.
Чтобы достичь истины при помощи умозаключений, надо соблюдать законы логики. Существует формальная и математическая логика.
Формальная логика – наука о законах и формах мышления.
Математическая логика изучает логические связи и отношения, лежащие в основе дедуктивного (логического) вывода.
Формальная логика связана с анализом наших обычных содержательных умозаключений, выражаемых разговорным языком. Математическая логика изучает только умозаключения со строго определёнными объектами и суждениями, для которых можно однозначно решить, истинны они или ложны.
В основе логических схем и устройств ЭВМ лежит специальный аппарат, использующий законы математической логики. Математическая логика изучает вопросы применения математических методов для решения логических задач и построения логических схем. Знание логики необходимо при разработке алгоритмов и программ, так как в большинстве языков программирования есть логические операции.
Алгебра логики – это раздел математической логики, значения всех элементов (функций и аргументов) которой определены в двухэлементном множестве: «Истина» («True») и «Ложь» («False»), или 1 и 0.
В математической логике суждения называются высказываниями. Алгебру логики иначе называют алгеброй высказываний.
Высказывание – это повествовательное предложение, о котором можно сказать, истинно оно или ложно.
Примеры высказываний Может быть истинным или ложным
Сейчас идёт снег.
Земля – планета Солнечной системы. истинно
2 + 8 < 5 ложно
5 ´ 5 = 25 истинно
Всякий квадрат есть параллелограмм. истинно
Всякий параллелограмм есть квадрат. ложно
2 ´ 2 = 5 ложно
А вот примеры, не являющиеся высказываниями: «Уходя, гасите свет!»; «Да здравствует мыло душистое и полотенце пушистое!»
Высказывания, приведённые выше, являются простыми. Сложные высказывания получаются путём объединения простых высказываний связками-союзами И, ИЛИ и частицей НЕ. Значение истинности сложных высказываний зависит от истинности входящих в них простых высказываний и от объединяющих их связок.
Операции сравнения
Операции сравнения называют ещё операциями отношения (relation operations), поскольку в них осуществляется оценка взаимосвязи (отношений) двух операндов. Под операндом понимается то, над чем выполняется операция.
В таблице 6 перечислены операторы, используемые для обозначения операций сравнения в языках программирования. Результат сравнения может быть либо истинным, либо ложным (Тruе или False). Приоритет операций сравнения ниже, чем у арифметических операций.
Таблица 6
Примеры операторов сравнения в разных языках программирования
Операция сравнения | Оператор | |
Basic, Pascal | С++, Java | |
равно | = | == |
не равно | <> | != |
больше | > | > |
меньше | < | < |
больше или равно | >= | >= |
меньше или равно | <= | <= |
Логические операции
Сложное высказывание можно построить из простых с помощью логических операций: отрицания, конъюнкции, дизъюнкции, импликации и логических выражений, представляющих собой комбинации логических операций.
Логические операции иногда называют булевыми, так как взяты они из булевой алгебры. Операндами в них выступают булевы величины и возвращают они тоже булевы значения. В таблице 7 приведены основные логические операторы, используемые в разных языках программирования, в порядке убывания приоритета. При этом следует отметить, что в разных языках программирования логические операции могут иметь разный приоритет по отношению к другим операциям – арифметическим и сравнения. Например, в Бейсике приоритет логических операций ниже, чем операций сравнения. В Паскале – наоборот, а приоритет оператора not даже выше, чем у арифметических операций.
Таблица 7