Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Представление текстовых данных
Любой текст состоит из символов: букв, цифр, знаков препинания и т.д. Все символы при вводе кодируются числами – кодами соответствующих кодовых таблиц, текст представляется в виде набора кодов. Коды преобразуются в соответствующие символы (выполняется декодирование) при выводе их на устройства вывода. Все кодовые таблицы подчиняются международным стандартам кодирования символов. Традиционно для кодирования одного символа используется 1 байт=8 битам. При этом общее количество различных символов составляет 28=256, а коды символов имеют значения от 0 по 255. Основой для кодовых таблиц является американский стандартный код для обмена информацией ASCII из 128 символов (таблица 2). Из них первые 33 кода управляющие и соответствуют не символам, а действиям (перевод строки, удаление символа и т.д.), остальные коды – являются интернациональными и содержат символы латинского алфавита, цифры, знаки арифметических операций и препинания. Таблица 2 - Базовая таблица кодировки ASCII
Например, слово Time кодируется как 84, 105, 109, 101, а затем каждый код переводится в 2-ю систему счисления и записывается в разрядные сетки. Для кодирования национальных алфавитов используются расширения таблицы ASCII, в которых с 128-й по 255-й код содержатся буквы национальных алфавитов, символов валюты и т.д. Для русского языка наиболее распространенными являются кодовые таблицы СР-866, Windows 1251(или CP-1251), КОИ-8, Мас, ISO. Таблица 3 – Кодировка Windows 1251
В настоящее время широкое распространение получил новый международный стандарт Unicode, который отводит на каждый символ не один, а два байта. Таким образом, можно закодировать не 256, а 216=65536 различных символов, т.е. алфавиты всех известных языков, математические символы и др. Пример. Закодировать слово ЭВМв кодировкеWindows 1251.
Представление графических данных Графическая информация может быть представлена в аналоговой (с бесконечным множеством значений, изменяющихся непрерывно) или дискретной (с конечным множеством значений) формах. При кодировании изображения производится его пространственная дискретизация, т.е. преобразование непрерывных форм изображений в набор дискретных значений в форме кодов. Изображение разбивается на отдельные графические точки (пиксели), причем каждому фрагменту присваивается код цвета. Совокупность используемых в наборе цветов образует палитру цветов. Чаще всего используются следующие цветовые модели: - RGB(красный – зеленый – синий); - CMYK (голубой – пурпурный – желтый – черный); - HSB (цветовой оттенок – насыщенность – яркость). Таким образом, при компьютерном представлении графической информации формируется растровое изображение из определенного количества строк пикселей. Качество изображения определяется разрешающей способностью монитора (количеством точек) и глубиной цвета. Разрешающая способность может быть, например 800х600, 1024х768 или 1280х1024. Глубина цвета задается количеством бит, используемых для кодирования цвета точки. Наиболее распространенные значениями глубины цвета являются 8, 16 (для модели High Color), 24 и 32 (для True Color). Количество цветов, отображаемых на экране монитора, вычисляется по формуле Хартли N=2I , где I – глубина цвета. Для того чтобы на экране монитора формировалось изображение, информация о каждой его точке (код цвета пикселя) должна храниться в видеопамяти компьютера. Для вычисления объема видеопамяти для каждого из графических режимов: V= I ∙ К, где К – количество точек, I – глубина цвета в битах. Пример. Сколько килобайт дискового пространства понадобится для хранения изображения экрана разрешением 1024х768 пикселей с глубиной цвета 8 бит? 1) I=8 бит 2) К=1024 ∙ 768 3) Необходимый объем видеопамяти: V = 1024 ∙ 768 ∙ 8 бит= (1024 ∙ 768 ∙ 8)/(1024 ∙ 8) Кбайт= 768 Кбайт Задания: 1) Количество цветов, воспроизводимых на экране сотового телефона равно 1024, разрешение экрана 256х128. Определить минимальный объем требуемой видеопамяти. 2) Растровый графический файл, позволяющий представить изображение в режиме высококачественной графики (High Color), имеет объем 8000 бит. Чему равно максимальное число точек, данные о которых могут содержаться в этом файле? Представление звуковых данных Звук – звуковая волна с непрерывно меняющейся амплитудой и частотой. Чем больше частота сигнала, тем выше тон и чем больше амплитуда сигнала, тем он громче для человека. Частоту звука измеряют в герцах – количество колебаний в секунду. Человек способен воспринимать звук от 16 Гц до 20 КГц. Амплитуду называют звуковым давлением или силой звука, которая измеряется в единицах давления паскалях (Па). Это величина характеризует воспринимаемую громкость звука. Для воспроизведения звука компьютером непрерывный звуковой сигнал должен быть превращен в последовательность электрических импульсов. При этом непрерывная зависимость амплитуды сигнала от времени заменяется на дискретную последовательность уровней громкости. Глубина кодирования звука I – это количество бит, используемых для кодирования различных уровней сигнала. Количество различных уровней сигнала можно рассчитать по формуле Хартли: N=2I, где I – глубина звука. Современные звуковые карты обеспечивают 16-битную глубину кодирования звука и тогда N= 65536. Частота дискретизации М – количество измерений уровня звукового сигнала в единицу времени. Одно измерение за секунду соответствует частоте 1 Гц. Качественная радиотрансляция обеспечивается глубиной кодирования 8 бит и частотой дискретизации до 8 КГц. При частоте 48 КГц и глубине 16 бит – высококачественное звучание CD-диска (стереозвук –2 канала, моно –1 канал), а при 11 КГц и 8 битах – звук приглушенный. Для вычисления объема звуковой информации V= M ∙ I ∙ t, где t – время звучания (в секундах), М – в Гц, I – в битах. Пример. Определитьобъем стереоаудиофайла в формате PCM с длительностью звучания 1 сек. М=48 КГц=4800 Гц, I= 16 бит, t=1 сек V= M ∙ I ∙ t= 48∙ 16 ∙ 1∙ 2(канала) =1536 бит = 192 байт. Лабораторная работа 4. Двоичная арифметика Основным недостатком использования двоичной системы счисления является необходимость перевода исходных числовых данных из десятичной системы счисления в двоичную, а результатов решения - из двоичной системы счисления в десятичную. Операции, связанные с переводами чисел в двоичную систему счисления и обратно, выполняются ЭВМ по специальным подпрограммам с использованием вспомогательной двоично-десятичной системы счисления. Все арифметические операции с двоичными числами сводятся к операции сложения и сдвига разрядов. При этом числа представляются в прямом, обратном или дополнительном кодах. Прямым кодом числа называется число, представленное в двоичном виде в разрядной сетке. Обратный код получается инвертированием прямого кода числа, т. е. заменой нулей на единицы, а единицы на нули всех разрядов, кроме знакового. Дополнительный код получаетсяиз обратного прибавлением единицы. Сложение двоичных чисел Сложение выполняется, начиная с младшего разряда, по правилам:
При сложении трёх и более двоичных чисел необходимо внимательно следить за образующимися при сложении переносами в старшие разряды, поскольку эти единицы могут переходить не только в соседние старшие разряды, но и в более удалённые. Пример: Вычислить сумму А+В, если А=60 В=25 Переведем оба числа в двоичную систему счисления и получим прямые коды для них. Для наглядности и так как числа небольшие возьмем 8-ми разрядные сетки. 6010= 1111002 2510= 110012
Результат положителен, переведем его в 10-ю систему: 1 0 1 0 1 0 1(2) =1*26 +0*25 +1*24 + 0*23 +1*22 +0*21 +1*20= 64+16+4+1=85 6 5 4 3 2 1 0
Вычисление разности. В большинстве компьютеров операция вычитания не используется. Вместо нее производится сложение обратных или дополнительных кодов уменьшаемого и вычитаемого. Это позволяет существенно упростить конструкцию арифметическо-логического устройства.
Рассмотрим пример: А-В= 988, 15 – 547, 58. Данный пример можно представить, как сложение двух чисел: положительного А=988, 15 и отрицательного В=-547, 58. В полученном выражении В – отрицательное и по абсолютной величине меньше чем А. Сложение обратных кодов. В этом случае поступают следующим образом. Отрицательное число В переводится из прямого в обратный код и складывается с числом А. После сложения в знаковом разряде получаемого числа появляется единица, которая переносится в младший разряд числа и складывается.
Впр Воб Апр Сложение дополнительных кодов. Число В переводится в дополнительный код, который получается путем образования обратного кода с последующим прибавлением единицы к его младшему разряду.
Число В в обратном, дополнительном коде:
После этого вычисляется А+ВДоп. Получаемая в знаковом разряде дополнительная единица отбрасывается:
Проверка результата переводом из двоичной системы счисления в десятеричную систему счисления.
А-В=988, 15-547, 58=440, 57
Перевод числа с помощью схемы Горнера: 1 1 0 1 1 1 0 0 0, 1 0 0 1 0 0 1(2) =1*28+1*27+1*25+1*24+1*23+1*2-1+1*2-4+1*2-7 ≈ 8 7 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 ≈ 440, 57 Вычисление разности В – А (А> B). Сложение обратных кодов. Отрицательное число А переводится из прямого в обратный код и складывается с числом В. Затем биты цифровой части результата инвертируется.
Апр Аоб Впр
Сложение дополнительных кодов. Число А переводится в обратный дополнительный код:
После этого вычисляется АДоп+В, затем в прямой код инвертруются биты цифровой части результата и к младшему разряду прибавляется единица.
Проверка результата переводом из двоичной системы счисления в десятеричную систему счисления.
1 1 0 1 1 1 0 0 0.1 0 0 1 0 0 1 (2) =1*28 + 1*27 + 1*25 + 1*24 + 1*23 + 1*2-1 + 8 7 6 5 4 3 2 1 0 -1 -2 -3 -4- 5 -6 -7 1*2-4+1*2-7 ≈ -440, 57
Вычисление -А-В. В данном примере А и В – отрицательные. В обратном коде. Оба числа А и В переводятся в обратный код и складываются. Полученный первоначально неправильный результат компьютер исправляет переносом единицы из знакового разряда в младший разряд суммы. Затем биты цифровой части результата инвертируется в прямой код.
В обратном дополнительном коде. Оба числа А и В переводятся в обратный дополнительный код и складываются. В результате получается дополнительный код суммы (-А-В)Доп. При этом дополнительная единица в знаковой части отбрасывается. Полученный дополнительный код переводится в обратный вычитанием единицы, а затем цифровая часть результата инвертируется в прямой код.
Проверка результата переводом из двоичной системы счисления в десятичную систему счисления.
- А - В = -988, 15-547, 58 = -1535, 73 Перевод числа с помощью схемы Горнера: 1 0 1 1 1 1 1 1 1 1 1. 1 0 1 1 1 0 1(2) = - (1*210 +1*28 +1*27 +1*26 + 1*25 + 10 9 8 7 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 +1*24 + 1*23 + 1*22 + 1*21 +1*20 +1*2-1 + 1*2-3 + 1*2-4 + 1*2-5 + 1*2-7 )=
=-(1024+256+128+64+32+16+8+4+2+1+0, 5+0, 125+0, 0625+ 0, 03125+0, 0078125) ≈ -1535, 73 Умножение двоичных чисел выполняется путём образования частичных произведений и последующего их суммирования. В соответствии с табл.1.2 каждое частичное произведение равно нулю, если в соответствующем разряде множителя стоит нуль, или равно множимому, сдвинутому на соответствующее число разрядов влево, если разряде множителя стоит единица. Положение запятой определяется так же, как при умножении десятичных чисел. Деление двоичных чисел сводится к операциям умножения и вычитания. Для представления десятичных чисел в ЭВМ используют двухпозиционные элементы, из которых построена ЭВМ.
Таблица 3 – Арифметические операции над одноразрядными двоичными числами
Вычисление произведения А*В Умножение в двоичной системе
Во многих компьютерах умножение производится как последовательность сложений и сдвигов. Для этого в арифметическо-логическом устройстве (АЛУ) имеется регистр, называемый накапливающим сумматором, который до начала выполнения операции содержит число ноль. В процессе выполнения операции в нем поочередно размещаются множимое и результаты промежуточных сложений, а по завершении операции — окончательный результат. Другой регистр АЛУ, участвующий в выполнении этой операции, вначале содержит множитель. Затем по мере выполнения сложений содержащееся в нем число уменьшается, пока не достигнет нулевого значения. Для иллюстрации умножим А = 988, 15(10)= 1 1 1 1 0 1 1 1 0 0. 0 0 1 0 0 1 1(2) на В = 547, 58(10) = 1 0 0 0 1 0 0 0 1 1. 1 0 0 1 0 1 0(2) Операция умножения состоит из ряда последовательных операций сложения частных произведений. Операциями сложения управляют разряды множителя, а именно: если в каком-то разряде множителя находится единица, то к сумме частных произведений добавляется множимое с соответствующим сдвигом; если в разряде множителя — нуль, то множимое не прибавляется. Таким образом, кроме операции сложения чисел для получения произведения необходима операция сдвига чисел. При этом появляется возможность сдвигать множимое или сумму частных произведений, что даёт основание для разных методов реализации операции умножения.
Проверка результата переводом из двоичной системы счисления в десятеричную систему счисления. А*В = 988, 15*547, 58=541091, 177 Перевод числа с помощью схемы Горнера:
1 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 0 0 0. 0 1 1 1 0 1 1 1 1 1 1 1 1 0= 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 -8 - 9 -10 -11 -12 -13 -14 =1*219+ 1*214 + 1*28 + 1*27 + 1*25 + 1*2-2+ 1*2-3 1*2-4 1*2-6 1*2-7+ 1*2-8 + 1*2-9 + + 1*2-10+ 1*2-11+ 1*2-12+1*2-13 = 524288+16384+256+128+32+0, 125+0, 0625+0, 015625+ +0, 0078125+0, 00390625+0, 001953125+0, 0009765625+0, 0004882125+0, 000244140625++0, 0001220703125≈ 541091, 177
Задания: 4) Дано целое десятичное число Х=-5010. Его 8-битный дополнительный код равен 11001110, 1001110 или 1101111. 10110001? 5) Дополнительный код числа 310 в однобайтовом формате имеет вид: 01111100, 00000011, 01111101 или 10000011? Выберите правильный ответ. 6) Определите, в какой системе счисления записано математическое выражение 122+2=201 (В 4-ной, 2-й, 8-й, 3-й) 7) При сложении 8-х чисел 2…7 получается восьмеричное число 1064. Это значит, что в первом слагаемом пропущена цифра…(7, 5, 4, 6) 8) Равенство 14+3=22 будет истинным в системе счисления с основанием … (7, 5, 10, 2) 9) При вычитании из 2-го числа 1…0 двоичного числа 1011, получено двоичное число 11. Это значит, что в уменьшаемом пропущены цифры…(11, 10, 00, 01) Популярное:
|
Последнее изменение этой страницы: 2017-03-03; Просмотров: 515; Нарушение авторского права страницы