|
||||||||||||||||||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Запись содержимого полубайта в разных системах счисления
Поскольку байт состоит из двух полубайтов, то содержимое 1 байта памяти всегда можно записать двумя шестнадцатеричными цифрами. Например, если для кодирования алфавитно-цифровой информации применяется код ASCII (American Standard Code for Information Interchange), то шестнадцатеричным кодом цифры 0 будет 30, кодом латинской буквы A – 41 и т.п. На персональных компьютерах код ASCII используется при работе под управлением дисковой операционной системы (DOS), а также в текстовом редакторе Блокнот, работающем под управлением операционной системы Windows. Для кодирования символов в большинстве других программ, работающих под управлением различных версий Windows, применяется код ANSI, отличающийся от ASCII, в основном, в части кодирования букв национальных алфавитов, не совпадающих с английским. Общей чертой этих и некоторых других встречающихся кодировок текста является использование 1 байта для кодирования 1 символа. Для перекодирования текстовой информации (ASCII ®ANSI, ANSI®ASCII и т.п.) используются специальные программы. Числа в тексте документов представляются в виде символов. Например, число 123708 может быть представлено в виде шести символов, обозначающих цифры. Но в такой кодировке числа не могут участвовать в арифметических операциях. Поэтому в числовых массивах, предназначенных для расчетов, числа кодируются иначе. Например, целое число 123708 в шестнадцатеричной и двоичной системах счисления можно записать так: 123708 = 1E33C (16) = 0001 1110 0011 0011 1100 (2). Рассматриваемые системы счисления являются позиционными: значение каждой цифры зависит от ее позиции в числе. Позиция 0 (крайняя справа в целом числе) подразумевает умножение стоящей в ней цифры на основание системы, возведенное в степень 0. Цифра в позиции 1 должна быть умножена на основание системы, возведенное в степень 1 и т.д. Например, цифра 7 в десятичном представлении числа 123708 находится во второй позиции и, следовательно, означает 7 . 102 = 700. Шестнадцатеричное представление числа 123708 можно пояснить следующей записью: 1E33C (16) = 1*16 4 + 14*16 3 + 3*16 2 + 3*16 1 +12*16 0 = = 65536+57344+768+48+12 =123708. От шестнадцатеричной записи очень легко перейти к двоичной, заменив каждую шестнадцатеричную цифру четырьмя двоичными согласно таблице 3.1. Целые числа обычно хранятся в двухбайтовом (Integer - целое) или четырехбайтовом (Long – длинное целое) формате. В n байтах можно разместить целое положительное число от 0 до 256n - 1. Поскольку один из разрядов требуется для кодирования знака числа, то максимальное по модулю целое число, которое можно закодировать в двух байтах, равно 32767, а в четырех байтах - 2147483647. При размещении целого числа на регистре арифметического устройства процессора число как бы прижимается к правому краю регистра – считается, что десятичная точка зафиксирована справа от младшего разряда. Поэтому по способу представления целые числа называют еще числами с фиксированной точкой. Действительные числа кодируются сложнее. По способу представления в разрядной сетке их называют числами с плавающей точкой. Такие числа обычно хранятся в четырехбайтовом (Single – одинарная точность) или в восьмибайтовом (Double – двойная точность) формате. В первом байте кодируются знак числа, знак его порядка и сам порядок, а в остальных байтах мантисса. Например, если бы число 19705.0001 представлялось в разрядной сетке в десятичной системе счисления, то его порядок был бы равен 5, а мантисса 0.197050001, т.е. 19705.0001=105. 0.197050001. Мантисса в разрядной сетке арифметического устройства как бы прижимается к левому краю, причем ноль перед десятичной точкой и сама точка в разрядную сетку не заносятся, а только подразумеваются. Человек, имеющий дело с вычислениями, должен представлять себе, как такие числа складываются и вычитаются. Пусть к рассмотренному уже числу требуется прибавить число 0.0001. В нормализованном виде, т.е. с порядком и мантиссой, прижатой к левому краю разрядной сетки, оно будет иметь вид 10-3. 0.1. Чтобы сложить наши числа, процессор сначала увеличит порядок второго числа до 5, сдвинув мантиссу вправо на 8 разрядов, т.е. денормализует второе число с целью выравнивания порядков. Теперь, когда это число примет вид 105. 0.000000001, процессор сложит мантиссы и при необходимости нормализует результат, прижав его мантиссу к левому краю разрядной сетки с соответствующей коррекцией порядка. Критическим моментом в этой последовательности операций является денормализация меньшего слагаемого. В этот момент младшие разряды его мантиссы могут вытолкнуться из разрядной сетки, если она недостаточно велика, а это приведет к потере точности результата. Поэтому при выборе форматов накапливаемых и хранимых данных (например, в таблицах баз данных) специалист должен представлять диапазон значений признаков – параметров объектов, часто называемых атрибутами. Графическая информация представляется в растровых или векторных форматах. В векторных форматах записываются как бы команды для плоттера или принтера: выбрать такой-то цвет, встать в точку с такими-то координатами, провести отрезок прямой в точку с другими координатами и т.п. Такой способ кодирования графических документов (по существу, в виде команд, хранимых в текстовом файле) компактен, точен, позволяет легко изменять масштаб изображения, но применяется только для представления формализованной информации – графиков, схем, чертежей, карт. Растровый способ позволяет закодировать любое изображение – картину, фотографию и т.п. Файл, содержащий изображение в растровом формате, обычно получают с помощью цифрового фотоаппарата или сканера – периферийного устройства компьютера, которое оптически сканирует картинку с определенным шагом между линиями сканирования и точками на этих линиях. Для каждой точки запоминается оттенок серого или цвет, если сканер – цветной. При разрешении 600 dpi (точек на дюйм) на каждый дюйм (2.54 см) приходится 600 точек. Следовательно, при сканировании картинки размером 25. 25 см2 должно быть закодировано около 36 млн точек. Если цвет одной точки кодировать в двух байтах (стандарт High Color – 65536 цветов), то для хранения такой картины потребуется примерно 70 Мбайт памяти. Поэтому все форматы хранения графических образов предусматривают сжатие информации, которое может осуществляться без потерь (форматы BMP, GIF, PCX, TIFF) или с потерями (формат JPEG). В последнее время все чаще применяется формат JPEG (имена файлов имеют расширение JPG), уменьшающий объем данных в десятки раз с потерями, которые не заметны для человеческого глаза. В основе методов сжатия информации чаще всего лежит замена многократного повторения величины указанием числа повторений, а также замена часто повторяющихся величин короткими кодами (метод Хаффмана). Видео информация представляется аналогично графической. Ведь каждый кадр видео это просто картинка, к которой применяются описанные выше способы хранения и сжатия графической информации. Аудио информация представляется следующим образом: с определенной регулярностью измеряется амплитуда электрического сигнала, и полученные в каждый момент результаты записываются в виде двоичных чисел (оцифровываются). Для высококачественной оцифровки на представление каждого числа отводятся 2 байта. Например, при записи на музыкальный CD (Compact Disk) стандартом является «44.1 Кгц 16 бит стерео». Это означает, что при оцифровке за каждую секунду звучания делается 44100 отсчётов по 16 бит на каждый из двух каналов. Таким образом, для хранения одной секунды идеального стереозвука требуется 44100 (отсчётов) . 2 (байта) . 2 (канала) = 176400 байт, или 172.3 Кбайта. Разумеется, подобный размер не всегда приемлем, и, как и в случае с графической и видеоинформацией, применяются различные способы сжатия. В настоящее время наиболее популярны форматы WAV, RA, MP3, недавно появился формат VQF. Наиболее эффективны форматы MP3 и VQF, в которых применяется сжатие с потерями. Формат MP3 разработан международной организацией MPEG (Motion Pictures Expert Group), занимающейся разработкой стандартов для цифрового сжатия видео и аудиоинформации. При сжатии MPEG’ом в 11-12 раз для записи 1 секунды звучания требуются 128 Кбит, или 16 Кбайт, т.е. в 1 Гбайт памяти «влезает» 18 часов музыки. Такое сжатие считается оптимальным. Программы, применяемые для сжатия музыкальных файлов, позволяют использовать даже большие степени сжатия, но тогда потери станут заметны многим слушателям.
Контрольные вопросы к разделу 3: что такое данные; что такое бит, байт; в каких единицах исчисляются объемы данных; что такое система кодирования, система счисления, позиционная система счисления; запись содержимого полубайта в десятичной, шестнадцатеричной и двоичной системах; кодирование текста; кодирование целых и действительных чисел; как складываются или вычитаются действительные числа на регистрах арифметического устройства процессора; векторная и растровая графика, кодирование графической и видеоинформации; кодирование аудиоинформации.
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |