СКИПОДы 2007 полная версия (1127795), страница 2
Текст из файла (страница 2)
Важно помнить, что любые теоретические результаты применимылишь к определённому кругу случаев, очерченному первоначальными допущениями.В качестве единицы информации Клод Шеннон предложил принять один бит (англ. bit— binary digit — двоичная цифра).Бит в теории информации — количество информации, необходимое для различения двухравновероятных сообщений (типа "орел"—"решка", "чет"—"нечет" и т.п.).В вычислительной технике битом называют наименьшую "порцию" памяти компьютера,необходимую для хранения одного из двух знаков "0" и "1", используемых длявнутримашинного представления данных и команд.Знания и ЭВМ.Что-то типа…Числа в ЭВМРассмотрим теперь более подробно процесс кодирования чисел в компьютере.
Среди чисел,которые мы используем, встречаются натуральные, целые, рациональные, иррациональные.В вычислительных машинах применяются две формы представления чисел:- естественная форма или форма с фиксированной запятой (точкой);- нормализованная форма или форма с плавающей запятой (точкой);С фиксированной запятой числа изображаются в виде последовательности цифр спостоянным для всех чисел положением запятой, отделяющей целую часть от дробной.Например, 32,54; 0,0036; –108,2. Эта форма проста, естественна, но имеет небольшойдиапазон представления чисел и поэтому не всегда приемлема при вычислениях.
Если врезультате операции получится число, выходящее за допустимый диапазон, происходитпереполнение разрядной сетки и дальнейшие вычисления теряют смысл. В современныхкомпьютерах форма представления чисел с фиксированной запятой используется толькодля целых чисел.С плавающей запятой числа изображаются в виде X = ±M×P±r, где M - мантисса числа(правильная дробь в пределах 0,1 ≤ M < 1), r - порядок числа (целое), P - основание системысчисления.
Например, приведенные выше числа с фиксированной запятой можнопреобразовать в числа с плавающей запятой так: 0,3254×102, 0,36×10–2, –0,1082×103.Нормализованная форма представленияимеет огромный диапазон чисел и являетсяосновной в современных ЭВМ.Всякое десятичное число, прежде чем оно попадает в память компьютера, преобразуется посхеме:X10→X2→X2 = M2×102rПосле этого осуществляется ещё одна важная процедура:- мантисса с её знаком заменяется кодом мантиссы с её знаком;5- порядок числа с его знаком заменяется кодом порядка с его знаком.Указанные коды двоичных чисел - это образы чисел, которые и воспринимаютвычислительные устройства.Каждому двоичному числу можно поставить в соответствие несколько видов кодов.Существуют следующие коды двоичных чисел:Прямой код.
Прямой код двоичного числа (а это либо мантисса, либо порядок) образуетсяпо такому алгоритму:1. Определить данное двоичное число - оно либо целое (порядок), либо правильная дробь(мантисса).2. Если это дробь. то цифры после запятой можно рассматривать как целое число.3. Если это целое и положительное двоичное число, то вместе с добавлением 0 в старшийразряд число превращается в код. Для отрицательного двоичного числа перед ним ставитсяединица. Например:число X2 = –0,1011012→ код числа X пр = 1101101; число Y2 = +0,11011012→ код числаYпр = 01101101.Красным цветом выделены знаковые разряды и, кроме того, у кодов отсутствует индекс "2".Обратный код. Обратный код положительного двоичного числа совпадает с прямым кодом,а для отрицательного числа нужно, исключая знаковый разряд, во всех остальных разрядахнули заменить на единицы и наоборот.
Например: число X2 = –0,101012 → Xпр = 1 10101→ Xобр = 101010;числоY2 = +0,11012 → Yпр = 01101 = Yобр.Дополнительный код. Дополнительный код положительного числа совпадает с его прямымкодом. Дополнительный код отрицательного числа образуется путём прибавления 1 кобратному коду. Например:число X2 = –0,100102 → Xпр = 110010 → Xобр = 101101 → Xдоп = 101110;число Y2 = +0,1011 → Yпр = 01011 = Yобр = Yдоп.Сложение и вычитание двоичных чисел. Сложение чисел, а также вычитание чисел вобратном или дополнительном кодах выполняется с использованием обычного правилаарифметического сложения многоразрядных чисел. Это правило распространяется и назнаковые разряды чисел.
Различие же обратного и дополнительного кодов связано с тем,что потом делают с единицей переноса из старшего разряда, изображающего знак числа.При сложении чисел в обратном коде эту единицу надо прибавить к младшему разрядурезультата, а в дополнительном коде единица переноса из старшего разряда игнорируется.Это очевидно, если вспомнить, что дополнительный код из обратного получается как разприбавлением единицы. Рассмотрим пример: сложить числа +18 и –7.Итак, как в обратном, так и в дополнительном кодах результаты сложения совпали и равны10112= 1110.Умножение и деление двоичных чисел в ЭВМ производится в прямом коде, а их знакииспользуются лишь для определения знака результата.
Также как и в математике,умножение и деление сводится к операциям сдвигов и сложений (с учётом знака числа).Полученные коды мантиссы и порядка для каждого числа помещаются в ячейки памятиЭВМ. Для каждой цифры, входящей в код, в ячейке памяти отводится своё отдельное место.Одна ячейка памяти состоит из 8 бит, т.е.
1 байта. В современных компьютерах 2 байтавыделяются для одного машинного слова В последних моделях ПК обработка информацииведётся двойными словами, содержащими 4 байта. Числа с фиксированной запятой имеютформат одного слова, а числа с плавающей запятой - формат двойного слова..Пример: Дано число с плавающей запятой величиной –0,625×108. Нужно преобразоватьего в машинный код и заполнить 32-разрядную ячейку памяти. Мантисса числа 0,62510 =0,1012.
Поскольку порядок чисел может быть как положительным, так и отрицательным, то6машинный порядок смещается относительно естественного таким образом, чтобы весьдиапазон машинных порядков изменялся от 0 до максимума, определяемого количествомразрядов, выделяемых для размещения чисел порядка. Обычно в 32-разрядной ячейкецифры порядка занимают 7 разрядов старшего байта, а восьмой разряд используется дляфиксации знака числа.Семь двоичных разрядов позволяют разместить диапазондесятичных разрядов от –64 до +63. Если обозначить машинный порядок через R, аестественный через r, то связь между ними будет такая: R10 = r10+6410.
Для двоичнойсистемы счисления R2 = r2 + 10000002. В нашем примере порядок r равен 810 = 10002,следовательно R2 = 1001000. В двоичной системе исходное число выглядит так: –0,101х101000. Запись этого числа в 32-разрядной ячейке представлена в таблице: Знакчисла ПорядокМантисса№ разряда3130292827262524232221201918•••10Число 11001000101000000Хранение нечисловых видов информацииЭВМ первых двух поколений могли обрабатывать только числовую информацию,полностью оправдывая свое название вычислительных машин. Лишь переход к третьемупоколению принес изменения: к этому времени уже назрела настоятельная необходимостьиспользования текстов.
Следуя ходу исторического развития, мы тоже начнем нашерассмотрение с этого вида информации.С точки зрения ЭВМ текст состоит из отдельных символов. К числу символов принадлежатне только буквы (заглавные или строчные, латинские или русские), но и цифры, знакипрепинания, спецсимволы типа "=", "(", "&" и т.п. и даже (обратите особое внимание!)пробелы между словами.
Да, не удивляйтесь: пустое место в тексте тоже должно иметь своеобозначение.Каждый символ хранится в виде двоичного кода, который является номером символа.Можно сказать, что компьютер имеет собственный алфавит, где весь набор символов строгоупорядочен. Количество символов в алфавите также тесно связано с двоичнымпредставлением и у всех ЭВМ равняется 256. Иными словами, каждый символ всегдакодируется 8 битами, т.е. занимает ровно один байт.Как видите, хранится не начертание буквы, а ее номер. Именно по этому номерувоспроизводится вид символа на экране дисплея или на бумаге.
Поскольку алфавиты вразличных типах ЭВМ не полностью совпадают, при переносе с одной модели на другуюможет произойти превращение разумного текста в "абракадабру". Такой эффект иногдаполучается даже на одной машине в различных программных средах: например, русскийтекст, набранный в MS DOS, нельзя без специального преобразования прочитать вWindows. Остается утешать себя тем, что задача перекодировки текста из одной кодовойтаблицы в другую довольно проста и при наличии программ машина сама великолепно сней справляется.Наиболее стабильное положение в алфавитах всех ЭВМ занимают латинские буквы, цифрыи некоторые специальные знаки. Это связано с существованием международного стандартаASCII (American Standard Code for Information Interchange - Американский стандартный коддля обмена информацией). Русские же буквы не стандартизированы и могут иметьразличную кодировку.7Ниже в качестве примера приводится таблица стандартной части алфавита ЭВМ - символыс шестнадцатиричными кодами с 20 до 7F.0123456789ABCDEF2!"#$%&'()*+,./30123456789:;<=>?4@ABCDEFGHIJKLMNO5PQRSTUVWXYZ[\]^_6`abcdefghijklmno7pqrstuvwxyz{|}~Таблица стандартных ASCII символов.Пример: код 52 соответствует "R".Нельзя также пройти мимо еще одного интересного факта: каждый символ текста имеетсвой числовой код, но не каждому коду соответствует отображаемый на экране символ.Речь идет о существовании так называемых УПРАВЛЯЮЩИХ КОДОВ, величина которыхменьше шестнадцатиричного числа 20 (т.е.
32 в десятичной системе счисления). Приполучении этих кодов внешние устройства не изображают какого-либо символа, авыполняют те или иные управляющие действия. Так, код 07 вызывает подачу стандартногозвукового сигнала, а код 0C - очистку экрана. Особую роль играют коды 0A (переводстроки, обозначаемый часто LF) и 0D (возврат каретки - CR).
Первый вызываетперемещение в следующую строку без изменения позиции, а второй - на начало текущейстроки. Таким образом, для перехода на начало новой строки требуются оба кода и в любомтексте эта "неразлучная пара" кодов хранится после каждой строки.Обратим внимание читателя на то, что названия возврат каретки и перевод строки имеютисторическое происхождение и связаны с устройством пишущей машинки.Теперь рассмотрим очень кратко, не вдаваясь в технические подробности, основныепринципы хранения в памяти ЭВМ графической информации. В отличии от только чторассмотренного текстового режима дисплея, когда минимальной единицей изображенияявляется символ, при отображении графики картинка строится из отдельных элементов ПИКСЕЛОВ (от английских слов PICture ELement, означающих "элемент картинки").