Реферат по предмету "Информатика"


Теоретические основы информатики 3

--PAGE_BREAK--1.1.2.  Структура информатики
Информатика в широком смысле представляет собой единство разнообразных отраслей науки, техники и производства, связанных с переработкой информации главным образом с помощью компьютеров и телекоммуникационных средств связи во всех сферах человеческой деятельности.

Информатику в узком смысле слова можно представить как состоящую из трех взаимосвязанных частей (рис 1.2):

·                        технических средств (hardware), это компьютеры, принтеры, мониторы и т.д.

·                        программных средств (software), это программы, которые загружаются в компьютеры,

·                        алгоритмических средств (brainware), это модели, алгоритмы, алгоритмические языки и. д.

В широком смысле слова, информатику, как в целом, так и каждую ее часть обычно рассматривают с разных позиций:

·                        как отрасль народного хозяйства,

·                        как фундаментальную науку,

·                        как прикладную дисциплину.





Рис. 1.2. Структура информатики как отрасли, науки, прикладной дисциплины

Информатика как отрасль народного хозяйствавключает однородную совокупность предприятий разных форм хозяйствования, которые занимаются производством компьютерной техники, программных продуктов и разработкой современной технологии переработки информации.

Специфика и значение информатики как отрасли производствасостоят в том, что от нее во многом зависит рост производительности труда в других отраслях народного хозяйства.

Информатика как фундаментальная науказанимается разработкой методологии создания информационного обеспечения процессов управления любыми объектами на базе компьютерных информационных систем.

Одна из главных задач этой науки – выяснение, что такое информационные системы, какое место они занимают, какую должны иметь структуру, как функционируют и какие общие закономерности им свойственны.

Цель фундаментальных исследований в информатике – получение обобщенных знаний о любых информационных системах, выявление общих закономерностей их построения и функционирования.

Информатика как прикладная дисциплиназанимается:

·  изучением закономерностей в информационных процессах (накопление, переработка, распространение);

·  созданием информационных моделей коммуникаций в различных областях человеческой деятельности;

·  разработкой информационных систем и технологий в конкретных областях и выработкой рекомендаций относительно их жизненного цикла: для этапов проектирования и разработки систем, их производства, функционирования и т.д.

Таким образом, информатика занимается методами и средствами преобразования информации и их использованием в организации технологического процесса переработки информации.

Задачи информатикисостоят в следующем:

·                     исследование информационных процессов любой природы;

·                     разработка информационной техники и создание новейшей технологии переработки информации на базе полученных результатов исследования информационных процессов;

·                     решение научных и инженерных проблем создания, внедрения и обеспечения эффективного использования компьютерной техники и технологии во всех сферах общественной жизни.

Информатика является комплексной научно-технической дисциплиной, которая  создаёт новую информационную технику и новую технологию для решения проблем в других областях даже в таких, где считается невозможным применение количественных методов из-за неформализуемости процессов и явлений.

Значительное развитие средств информатики и связи дает возможность осуществить в будущем переход к «безбумажной технологии» и «безбумажному обществу». В «безбумажном обществе» информационный обмен между пользователями будет осуществляться с помощью видеотелефона, видеотекстных систем, электронной почты, факсимильной передачи документов, телеконференций, сети передачи данных и т.д., а сбор, хранение и обработка информации будет производиться с помощью средств вычислительной техники.

В последнее время, чтобы подчеркнуть использование современных средств вычислительной техники, информатики и связи вводят термин «новые информационные технологии» (НИТ).

Таким образом, в настоящее время информационная технология может быть определена, как совокупность систематических и массовых способов создания, накопления, обработки, хранения, передачи и распределения информации (данных, знаний) с помощью средств вычислительной техники и связи.

Особенно следует выделить в информатике методы математического моделирования и методы распознавания образов, практическая реализация которых стала возможной благодаря достижениям компьютерной техники.

Информатика становится ведущей в информационном обществе. Информированность в обществе в существенной степени зависит от прогресса информатики как науки, техники и производства.
    продолжение
--PAGE_BREAK--1.1.3.  Влияние информатики на общество
Общественные отношения в истории развития человеческого общества всегда зависели от приобретения знаний  в различных науках. Кардинальные изменения в сфере обработки информации позволило человеческому обществу приобрести новое качество.

В области овладения информацией в истории цивилизации можно выделить четыре этапа.

Первый этап:изобретение письменности, в результате чего появилась возможность передачи знаний от поколения к поколениям.

Второй этап:(середина XVI в.) изобретение книгопечатания, которое радикально изменило культуру, организацию деятельности общества.

Третий этап:(конец XIX в.) изобретение электричества, благодаря которому появились телеграф, телефон, радио, давшие возможность оперативно передавать информацию в любом объеме.

Четвертый этап:(70-е гг. XX в.) изобретение микропроцессорной технологии и появление персонального компьютера. Этот этап характеризуется:

·  переходом от механических и электрических средств преобразования информации к электронным;

·  миниатюризацией устройств, приборов, машин;

·  созданием программно-управляемых устройств и процессов.

В этот период на первый план выходит новая отрасль — информационная индустрия. Важнейшими составляющими информационной индустрии становятся все виды информационных технологий, особенно телекоммуникации.

Современная информационная технология опирается на достижения в области компьютерной техники и средств связи.

Роль информационных процессов в нашей жизни велика и с каждым годом становится все ощутимей.

Усложнение индустриального производства, социальной, экономической и политической жизни, изменение динамики процессов во всех сферах деятельности человека привели, с одной стороны, к росту потребностей в знаниях, а с другой – к созданию новых средств и способов удовлетворения этих потребностей.

Бурное развитие компьютерной техники и информационных технологий послужило толчком к развитию общества, построенного на использовании различной информации и получившего название информационного общества.

В информационном обществе изменятся производство, уклад жизни, система ценностей, возрастет значимость культурного досуга по отношению к материальным ценностям. Люди, живущие в информационном обществе, должны уметь пользоваться главным его инструментом, и в первую очередь универсальной информационной машиной – компьютером.

По сравнению с индустриальным обществом, где все направлено на производство и потребление товаров, в информационном обществе производятся и потребляются интеллект, знания, что приводит к увеличению доли умственного труда. От человека потребуется способность к творчеству, возрастет спрос на знания.

Информационное общество– общество, в котором большинство работающих занято производством, хранением, переработкой и передачей информации, особенно высшей ее формы – знаний.

В настоящее время в передовых странах с конца XX в. постепенно проявляются очертания информационного общества. Все больше людей живут и работают в квартирах и офисах оснащенных всевозможными электронными приборами и компьютерными устройствами. В деятельности людей все большее место занимает обработка информации с помощью электронных средств.

В России с 1990 года осуществляется развитие социальной информатики, как нового перспективного направления в науке и образовании, которое становится научной базой для формирования информационного общества. Разработана концепция и методология изучения проблем социальной информатики в системе высшего образования.

А уже в 1996 году сформировались представления об информатике как о фундаментальной науке, имеющей междисциплинарное, научно-методологическое и мировоззренческое значения.

При переходе к информационному обществу возникает новая индустрия переработки информации на базе компьютерных и телекоммуникационных информационных технологий.

В настоящее время информационное общество можно охарактеризовать следующими признаками:

·  активно разрешается противоречие между большим потоком информации и информационной потребностью общества;

·  по сравнению с другими ресурсами информация в большинстве случаев имеет приоритет;

·  экономика занимает ведущее положение;

·  автоматизированная обработка, хранение, передача и использование данных выходит на первое место;

·  информационные технологии приобретают глобальный характер, охватывая все сферы деятельности человека;

·  формируется информационное единство всей человеческой цивилизации;

·  с помощью информационных технологий осуществляется доступ каждого человека к информационным ресурсам всей цивилизации;

·  реализуются гуманистические принципы управления обществом и воздействия на окружающую среду.

Кроме положительных моментов прогнозируются и опасные тенденции:

·  все большее влияние на общество средств массовой информации;

·  информационные технологии могут разрушить частную жизнь людей и организаций;

·  существует проблема отбора качественной и достоверной информации;

·  многим людям будет трудно адаптироваться к среде информационного общества. Существует опасность разрыва между «информационной элитой» (людьми, занимающимися разработкой информационных технологий) и потребителями.

Сегодня в России насчитывается около двух миллионов компьютеров. И хотя по абсолютному значению это достаточно большое количество, в среднем персональный компьютер есть только у каждого 10 россиянина.

Ближе всех на пути к информационному обществу стоят страны с развитой информационной индустрией, к числу которых можно отнести США, Японию, Англию, страны Западной Европы. В этих странах уже давно одним из направлений государственной политики является направление, связанное с инвестициями и поддержкой инноваций в информационную индустрию, в развитие компьютерных систем и телекоммуникаций.

В настоящее время тенденцией в информатизации общества является переход к использованию компьютеров в информационных сетях. Электронная компьютерная почта, компьютерные телеконференции и видеоконференции, поиск информации во «Всемирной паутине» стали повседневной практикой пользователей компьютеров в развитых странах.

Современные информационные технологии позволяют включать в состав документа мультимедийные объекты (графику, звук, анимацию, видео). Умение работать с информацией, представленной во всех этих формах, становится также социально значимым явлением в нашем обществе.

Использование компьютерных сетей позволяет максимально быстро доставить информацию широкому кругу потребителей.
    продолжение
--PAGE_BREAK--1.1.4.  Сообщения, данные, сигнал
Судя по высказываниям ученых, определения информатики не ведут к обозначению предмета исследования. Да и подмена информации ее количественной характеристикой начинается с первых страниц любых учебников. Школьники и студенты читают в учебниках определение информации, как “отражение предметного мира с помощью знаков и сигналов”. Намного ли и в какую именно сторону отличается ее полное “научное не определение” от школьного?

Передача и обработка “информационных сигналов” предусматривается всеми, а вот что именно “информационное” содержится в этих сигналах, остается неразрешимым вопросом, если, конечно, не удовлетвориться дежурным утверждением о том, что в них содержатся “сведения”.

Тут возникает вопрос, можно ли, опираясь на него точно определить количество информации? И далее, после справедливого утверждения о том, что это невозможно при данном определении, напрашивается вывод, что в зависимости от многих причин каждый из нас воспримет ее больше или меньше, приводят несколько известных вариантов алгоритмов определения этого самого количества информации.

Спрашивается, количество чего мы должны определять: “отражения”, “сведений” или “свойств”? Большинство же авторов стараются вообще не обращать внимания на отсутствие определения информации. Все это не так безобидно, как представляется на первый взгляд. Пустота заполняется текстами учебников, рекомендованных Министерством общего и профессионального образования РФ, об информационном поле: “…у материи остается лишь одно свойство — обладать изменяющейся структурой, т.е. существовать в пространстве и времени в форме универсального поля, которое мы будем именовать информационным полем”. Тут же появляется желание обратиться к азам диалектического материализма, так как идея информационного поля суть “материализованная диалектика”.

Похоже, все, что не имеет определения, можно называть полем — мысленным, чувственным, информационно-логическим и каким угодно.

Можно ли поверить в то, что измеряемая величина не имеет никакого вразумительного собственного определения? Этому поверить нельзя, ибо сегодня каждый школьник знает, что для того чтобы что-то измерить, надо иметь не только меру, но и сущность, феномен, явление, именованную шкалу, к которым эта мера прикладывается.

Любое свойство, даже самое “основное”, должно иметь сравнительное определение, имя в некоторой классификации свойств, без которого свойством не является. К информации же, как свойству, такое требование по какой-то причине не применяется.

Разработчики статистической теории количества информации всё сделали правильно, но только не для информации, а для некоторого, не нуждающегося в терминологическом определении, количества, при условии, что сообщения подчиняются статистическим закономерностям. Таким образом, научное общество вынуждено искать замену такого подхода с момента формирования понятия информатики.

В этом смысле информатика, как наука, мужественно борется за свое место под солнцем, не сдаваясь computer science, и ожидает свой предмет исследования.

Классическая количественная теория информации состоит из двух частей:

·                        теории преобразования сообщений и сигналов, основную долю в которой составляют вопросы кодирования и декодирования;

·                        теории передачи сообщений и сигналов без шумов и с шумами (с помехами) в канале связи.

Ее основным утверждением, влияющим на понимание смысла термина “информация” является утверждение: носителем сообщения или информации является сигнал.

Этой “информации” придаются количественная и качественная мера. То есть, вводится количество информации и, по возможности, количество семантики (вопрос о возможности существования собственного смысла сообщения без его интерпретации в передатчике и приемнике обычно не задается) в информационной посылке.

Таким образом, сохраняются “сигнальные” предпосылки: характеристики сигнала, на котором отражается (переносится) сообщение, и есть предмет изучения информации.

В этом-то случае и получается, чтособственно информацию определять не надо никак. Информация — просто “универсальное свойство” всего существующего в материальном мире, представимое через сигнал. После этого, конечно, можно утверждать, что, в зависимости от конкретного вида сигналов и их сочетаний, количество информации в них может быть больше или меньше.

Теория информации определяет, что если сообщение не снимает неопределенности, то оно не содержит информации, и наоборот если сообщение позволяет более определенно задать предмет, то в сообщении содержится информация.

Например, сообщение о том, что “Лев Николаевич Толстой написал роман «Война и мир», в котором описал события Отечественной войны 1812 года” для человека, знающего литературу, не содержит информацию, так как не несет ничего нового, но для школьников может обладать элементом новизны и тогда является информативным.

Степень неопределенности сообщениястали измерять величиной, получившей название энтропия, которая является функцией вероятности. Если вероятность равна 1, то энтропия равна нулю, а если вероятность равна 0, то энтропия равна бесконечности.

Количество информации, полученное как разность между начальной энтропией (до получения сообщения) и конечной энтропией (после получения сообщения), называется негэнтропией (отрицательной энтропией). Поэтому информацию иногда называют отрицательной энтропией. Соответственно у информации и у энтропии одна единица измерения – бит.

Такое понимание информации может привести к серьезным заблуждениям. Так, для школьного инспектора сообщение школьника о Л.Н.Толстом и его романе «Война и мир» не менее, а может быть и более (попробуйте подсчитать!) информативно, чем для самого школьника, ибо школьник, как и инспектор, уже информированы, но последнему это позволяет оценить не только знания отдельного ученика, но и уровень преподавания литературы.

После энтропийно-негэнтропийного подхода к информации некоторое распространение получил подход комбинаторный, когда количество информации определяется как функция числа элементов конечного множества в их комбинаторных отношениях. Можно встретить пример, когда мерой количества информации, содержащейся в некотором объекте А, относительно объекта В, берется минимальная “длина программы”, на основе которой можно однозначно преобразовать объект А в объект В. Это отголосок Колмогоровского предложения определения сложности системы по ее “программному” описанию.

К реальной жизни эти утверждения привязать довольно трудно, поэтому в другом варианте информация – это отражение разнообразия, то есть воспроизведение разнообразия одного объекта в другом объекте в результате их взаимодействия.

В такой концепции бит также является единицей измерения информации, которую получает приемник информации, осуществляя выбор из двух равновероятных возможностей разнообразия. Если же объекты не различаются, то их совокупность не содержит информации.

Например, в урне обнаружено два шара, из которых один белый, а второй черный. Оба вместе они несут в себе разнообразие — информацию — в один бит. Совокупность двух шаров одного цвета предлагается считать не содержащей информации. Основоположником концепции разнообразия является английский нейрофизиолог У.Р.Эшби. По его утверждению “информация не может передаваться в большем количестве, чем позволяет количество разнообразия”.

Такой подход не очень сильно отличается от примера с утверждениями о романе «Война и мир». Информацию нельзя отождествлять с различием. Считается, что различие, разнообразие суть объективная основа существования информации, если уж считать ее свойством всех материальных объектов, хотя кто возьмется утверждать, что однообразие не является свойством материи, сигналом или сообщением?

Можно предложить такое определение информации:

Информация— свойство материи и передается физическим сигналом, распространяющимся с помощью физического носителя, а ее количество может быть определено множеством подходов, в зависимости от конкретной задачи.

Качественная же сторона вообще не раскрыта в теории информации, здесь нет никакой ясности ситуации. В “модельно-математическом ключе” ставится задача нахождения “количества смысла”, “количества семантики”. Обратим внимание на то, что далеко не каждое свойство имеет осмысленное количественное выражение. Известные в математике “качественные шкалы” совсем не обязательно имеют метрику, т.е. некоторый способ сравнения “количеств” этого качества.

Теория же информации является самодостаточной, для того, чтобы мы вполне могли обходиться без “информатики”, а “собственные теории”, принадлежащие информатике как науке пока еще только зарождаются.

В конечном итоге сегодня во всех литературных источниках обычно указываются три общепринятые, почти “классические”, направления развития исследований, связанных со “свойственно-количественным” подходом к понятию информации:

— математический, количественный: разработка математического аппарата, отражающего основные свойства информации [Вот так и пишут в литературе: “свойства информации”, которая сама изначально определена как свойство!] или исследования в области сигнального понимания информации в полном соответствии с областью, приписываемой теории информации;

— понятийный, количественно-качественный: исследование основных свойств (!) информации — измерение ее ценности, полезности и т.п. или исследования в области понимания информации на уровне создания разнообразных подходов к ее количественно-качественному измерению;

— информатизационный: использование информационных методов в других науках (в социологии, лингвистике, биологии и др.) или рассмотрение информации в ее разъяснительном смысле, определенном как процесс информирования, или “информатизации”, происходящий стихийно или осуществляемый с какой-либо осознанной целью.

В компьютере для обеспечения выполнения операций с информацией бит представляется единицей или нулем.

Таким образом,информация в компьютере – это последовательность единиц и нулей и называются эти цифры битами.

С помощью 1 бита можно передать два варианта сообщений, например, 0 – нет, 1 – да или 0 – черный цвет, 1 – белый цвет. Чтобы вариантов сообщений было больше — биты объединяют. Из n бит можно составить 2n вариантов. Если объединить 8 бит, то получится новая единица измерения информации — 1 байт:

1 байт = 8 бит

С помощью 1 байта можно передать 28 = 256 вариантов, чего вполне достаточно для кодирования всех русских и английских, больших и маленьких букв, цифр и специальных знаков. Таким образом:

1 байт = 1 символ

При вводе с клавиатуры одного символа вводиться 1 байт информации.

Чтобы измерить больший объем информации, применяют более крупные единицы измерения информации.

                                                                                      Таблица 1.1

Наименование

Обозначение

Размер

Бит

Бит

1 двоичный разряд

Байт

Байт

1 байт = 8 бит

Килобайт

Кбайт

1 Кбайт = 1024 байта

Мегабайт

Мбайт

1 Мбайт = 1024 Кбайта

Гигабайт

Гбайт

1 Гбайт = 1024 Мбайта

Терабайт

Тбайт

1 Тбайт = 1024 Гбайта



Надо заметить, что при переходе к более крупным единицам «инженерная» погрешность, связанная с округлением, накапливается и становится недопустимой, поэтому на старших единицах измерения округление производится реже. Байт, как группа взаимосвязанных бит, появился вместе с первыми образцами электронной вычислительной техники. Долгое время байт был машинно-зависимым, то есть для разных вычислительных машин длина байта была разной. Только в конце 60-х годов понятие байта стало универсальным и машинонезависимым.  Во многих случаях целесообразно использовать не восьмиразрядное кодирование, а 16-разрядное, 24-разрядное, 32-разрядное и более. Группа из 16 взаимосвязанных бит (двух взаимосвязанных байтов) в информатике называется словом. Соответственно, группы из четырех взаимосвязанных байтов (32 разряда) называются удвоенным словом, а группы из восьми байтов (64 разряда) — учетверенным словом. Пока, на сегодняшний день, такой системы обозначения достаточно.
    продолжение
--PAGE_BREAK--1.1.5.  Единицы хранения данных
При хранении данных решаются две проблемы: как сохранить данные в наиболее компактном виде и как обеспечить к ним удобный и быстрый доступ (если доступ не обеспечен, то это не хранение). Для обеспечения доступа необходимо, чтобы данные имели упорядоченную структуру, а при этом  образуется «паразитная нагрузка» в виде адресных данных. Без них нельзя получить доступ к нужным элементам данных, входящих в структуру. Поскольку адресные данные тоже имеют размер и тоже подлежат хранению, хранить данные в виде мелких единиц, таких, как байты, неудобно. Их неудобно хранить и в более крупных единицах (килобайтах, мегабайтах и т. п.), поскольку неполное заполнение одной единицы хранения приводит к неэффективности хранения.

В качестве единицы хранения данных принят объект переменной длины, называемый файлом. Файл — это последовательность произвольного числа байтов, обладающая уникальным собственным именем. Обычно в отдельном файле хранят данные, относящиеся к одному типу. В этом случае тип данных определяет тип файла.

Проще всего представить себе файл в виде безразмерной папки, в которой можно по желанию добавлять содержимое или извлекать его оттуда. Поскольку в определении файла нет ограничений на размер, можно представить себе файл, имеющий 0 байтов (пустой файл), и файл, имеющий любое число байтов.

В определении файла особое внимание уделяется имени. Оно фактически несет в себе адресные данные, и косвенно говорит о той информации, которая содержится в файле.

Совокупность файлов образует файловую структуру, которая, как правило, имеет иерархический тип. Полный адрес файла в файловой структуре является уникальным и включает в себя собственное имя файла и путь доступа к нему.


1.1.6.  Представление чисел в памяти ЭВМ
1.    

1.5.    

1.6.    
1.1.6.1.     Представление информации в виде двоичного кода
Любой текст, представляется с помощью кода, в котором каждому отдельному символу в тексте (букве алфавита, цифре или знаку препи­нания) приписывается уникальная последовательность битов. Таким образом, текстовая информация представляется последовательностью битов, в которой наборы битов представляют символы в исходном тексте.

С появлением компьютеров разрабатывались различные системы кодов, для различного оборудования, что привело к пробле­мам в передаче информации. Чтобы разрешить сложившуюся ситуацию, Амери­канский национальный институт стандартов (ANSI) принял Американ­ский стандартный код для обмена информацией (ASCII). В этом коде используются наборы из семи битов для представления прописных и строчных букв английского алфавита, цифр от 0 до 9, пунктуационных знаков и управляющей информа­ции: перевод строки, возврат каретки и табуляция.

Сегодня стандарт ASCIIчасто увеличен до восьми битов для одного символа, при этом в ка­честве старшего бита в каждый код символа добавляется 0. Такой метод предоставляет код, в котором каждый набор полностью занимает ячейку памяти размером 1 байт, и дополнительно ещё 128 кодов (полученные приписыванием дополнительному биту значения 1), которые могут представлять символы, не входящие в исходный стандарт ASCII. К сожалению, из-за того, что производите­ли используют свои собственные интерпретации для этих дополнительных набо­ров битов, данные, в которых они появляются, часто не так просто переместить с системы одного производителя на систему другого.
Справка.

АМЕРИКАНСКИЙ НАЦИОНАЛЬНЫЙ ИНСТИТУТ СТАНДАРТОВ


Американский национальный институт стандартов (
ANSI
) основан в 1918 году неболь­шим консорциумом машиностроительных ассоциаций и государственных агентств как бесприбыльная организация для координации развития стандартов в частном секторе.

Сегодня в
ANSI
состоит более 1300 коммерческих и профессиональных организаций, торговых ассо­циаций и государственных агентств. Штаб-квартира
ANSI
находится в Нью-Йорке и представ­ляет США в организации
ISO
. Веб-страница Американского национального института стан­дартов находится по адресу:
http
://
www
.
ansi
.
org
.

Подобные организации существуют и в других странах:
Standards

Australia
(Австралия),
Standards

Council

of

Canada
(Канада),
China

State

Bureau

of

Quality

and

Technical

Supervision
(Китай),
Deutsches

Institut

fbr

Normung
(Германия),
Japanese

Industrial

Standards

Committee
(Япония),
Direcciyn

General

de

Normas
(Мексика), Государственные комитет Российской Федерации по стандартизации и метрологии (Россия),
Swiss

Association

for

Standardization
(Щвейцария) и
British

Standards

Institution
(Великобритания).

Например, привет­ствие «ПРИВЕТ» в этой системе будет иметь вид:



10001111

П

10010000

Р

10001000

И

10000010

В

10000101

Е

10010010

Т

Ведущие производители технического и программ­ного обеспечения разрабатывают свои системы кодирования. Например, система кодирования Unicode, которая получила широкую поддержку со стороны специалистов в области вычислительной техники. В этом коде для представления символов используются последовательности из 16 бит. В результате чего стандарт Unicodeвключает в себя 65 536 различных кодов, которых достаточно для представления наиболее употребляемых символов китайского и японского языков. Международная организация по стандартизации (ISO, от греческого слова isos
— «равный») разработала свой стандарт, который может конкурировать с Unicode. В этом стандарте один символ кодируется 32 битами и может представлять миллиарды символов.

Справка.

ISO
— МЕЖДУНАРОДНАЯ ОРГАНИЗАЦИЯ ПО СТАНДАРТИЗАЦИИ

Международная организация по стандартизации (
ISO
) организована в 1947 году как всемирная организация органов стандартизации, по одному из каждой страны.

Сегодня ее штаб-квартира находится в Женеве (Швейцария). Членами организации являются более 100 национальных институтов и многочисленные член-корреспонденты. (Член-корреспондент является представителем страны, в которой не существует национального института стан­дартизации. Они не могут непосредственно участвовать в разработке стандартов, но их ин­формируют о шагах, предпринимаемых
ISO
.)

Веб-страница
ISO
находится по адресу
http
:// www
.
iso
.
ch.



1.    

1.2.    

1.2.    

1.2.    

1.2.    

1.2.    

1.2.    

1..0.    

1..1.    

1.    

1.1.1.    

1.1.2.    

1.1.3.    

1.1.4.    

1.1.5.    

1.1.5.1.    
    продолжение
--PAGE_BREAK--1.1.6.2.     Представление числовых значений
Метод хранения информации в виде закодированных символов неэффективен для работы с числовой информацией.

Например, как будет храниться число 17? В стандарте ASCII, используется 1 байт памя­ти для каждого символа. Таким образом, нам потребуется в общей сумме 16 битов. А, самое большое чис­ло, которое мы можем представить, используя 16 битов, это 99. Поэтому более эффектив­ным является хранение числового значения в двоичном представлении.

Двоичное представление (binarynotation) — это запись числовых зна­чений, в которой используются только 0 и 1, а не 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9, как в традиционной, десятичной, системе счисления.

Напомним, что в десятичной системе счисления каждой позиции в записи числа соответствует определенный разряд. В записи числа 281 цифра 1 занимает позицию единиц, 8 — позицию десятков, 2 — позицию сотен.

3

7

5

                         Запись числа


                                      Рис. 1.3. Разрядность записи чисел

При смещении по записи числа влево вес разряда увеличивается в десять раз. Значение, представленное записью, мож­но получить, умножив значение каждого числа на вес его разряда и затем сложив полученные произведения. Например, запись 281 имеет вид:

(2 х 100) + (8 х 10) + (1 х 1).

В двоичном представлении каждая позиция в записи числа также соответствует определенному разряду. При движении по записи числа влево вес разряда каждый раз увеличивается в два раза.

Более точно, вес разряда последнего числа справа равен единице (2°), вес разряда следующего числа равен двум (21), следу­ющего — четырем (22), следующего — восьми (23) и т. д.

Например, в двоичной записи 1101 самая крайняя справа 1 соответствует весу разряда, равному едини­це, следующий ноль — весу разряда, равному двум, 1 соответствует весу раз­ряда, равному четырем, а самая крайняя слева 1 — весу разряда, равному восьми.

Чтобы получить значение, представленное двоичной записью, выполняем те же действия, как в случае с десятичной системой счисления: умножаем значение каждой цифры на вес соответствующего разряда и складываем полученные про­изведения.



1



1

1

                                     Запись числа

Рис. 1.4 Вес разрядов

Например, значение, имеющее запись 100101, равно 37.

Важно, что в двоичном представлении используют­ся только 0 и 1, и получение значения числа сводится к суммированию тех разрядов, в которых в записи стоит единица.

1

1Г0о"


1

1





1


Вес разряда

 










1

х Один                 = 1











х Два                    = 0







1

х Четыре             = 4





1

х Восемь             = 8



1

х Шестнадцать   = 16

1

х Тридцать два = 32

     Двоичная запись
                                           Значение  бита        Сумма           = 61

Рис. 1.5. Представление двоичных чисел

Еще один пример. Двоичная запись 1101 имеет значение 13, так как единицы соответствуют разрядам 1, 3 и 4.

Последовательность двоичных записей, соответствующих десятичным числам от 0 до 8, выглядит следующим образом: 0, 1, 10, 11, 100, 101, 110, 111, 1000.

Для получения двоичной записи больших положительных чисел можно использовать систематический подход, описываемый алгоритмом.

Шаг 1.Делим число на два и запишем остаток деления.

Шаг
2. Продолжаем делить частные на два и записывать остаток до тех пор, пока частное не будет равно нулю.

Шаг
3. Когда частное станет равно нулю, двоичная запись числа будет состоять из остатков деления, выписанных справа налево в том порядке, в каком они были получены.

Попробуем применить этот алгоритм к числу 13. Сначала делим тринадцать на два, получаем частное, равное шести, и единицу в остатке; так как частное не равно нулю, делим его на два в соответствии с шагом 2. В результате имеем новое частное, равное трем, и ноль в остатке. Это частное также не равно нулю, поэтому делим его на два, получая частное, равное единице, и два в остатке. Еще раз делим частное (единицу) на два, в этот раз частное равно нулю, а остаток едини­це. Так как мы получили в результате деления ноль, то переходим к третьему шагу и получаем двоичную запись исходного значения (тринадцать), которая имеет вид 1101.





Рис. 1.6. Преобразование числа 13 в двоичную форму записи
Теперь вспомним, что представление числа 17 в начале раздела (двумя байтами), и, что таким образом можно представить самое большое число 99. Становится видно, если мы будем использовать двоичное представление, мы сможем хранить целые числа в интервале от 0 до 65 535, что является значительным усовершенствованием.

Таким образом, числовую информацию принято хранить в виде двоичной записи, а не в виде закодированных символов. Речь идет о «в виде двоичной записи», потому что обычная двоичная система счисления описывает только основы нескольких способов хранения числовой информации, используемые в машинах.

Важно, что для хранения целых чисел принята система кодирования, которая называется представ­лением в дополнительном коде, которая дает возможность кодирования и положительных, и отрицательных чисел.

Для хранения чисел с дробной час­тью, таких как 3*/2 или 3/4, используется другая форма, называемая представле­нием чисел с плавающей точкой. Таким образом, отдельное значение (например, 15) может быть представлено различными последовательностями битов (как сим­вол, закодированный в стандарте ASCII; в представлении в дополнительном коде или в форме с плавающей точкой, как 150/2), и наоборот, отдельную последова­тельность битов можно интерпретировать по-разному.

При этом надо помнить, что независимо от размера области памяти, которую машина может выделить для хранения числового зна­чения, все равно будут появляться слишком большие целые числа или слишком маленькие дроби, не помещающиеся в эту область. В связи с этим всегда существует возможность ошибок, таких как переполнение (число слишком большое) или усечение (дробь слишком маленькая). С ними необходимо бороться, иначе ничего не подозревающий пользователь столкнется с множеством ошибочных данных.

1.    

1.1.    

1.2.    

1.3.    

1.4.    

1.5.    

1.6.    

1.6.1.    

1.6.2.    
    продолжение
--PAGE_BREAK--1.1.6.3.     Представление изображений


В компьютерных системах кроме текстовой и число­вой информации хранится графическая, звуковая и видео­информация. Способы представления этих данных находятся только в начале своего развития и, следовательно, не настолько стандартизированы.

Все изоб­ражения делят на две категории: растровые (bitmaptechniques) и векторные (vectortechniques).

Растровое изображениепредставляет собой набор точек, элементов изображения, которые называются пикселами (pixel). Самое про­стое представление имеет вид длинной последовательности битов, каждый из которых равен 0 или 1 в зависимости от того, белого или черного цвета пиксел. Цветные изображения отображать немного сложнее, так как необходимо каждый пиксел представлять комбинацией битов, обозначающей его цвет.

Многие внешние устройства компьютера (факсы, ви­деокамеры и сканеры) конвертируют изображения в растровый формат. Эти уст­ройства кодируют цвет пиксела в виде комбинации трех составляю­щих: красной, зеленой и синей, соответствующих трем основным цветам. Для представления интенсивности каждого цвета используется один байт, в то время как для представления целого пиксела изображения требуется три байта. Этот подход с использованием трех составляющих цвета используется также в мониторе компьютера, который отображает миллиарды пикселов, каждый из которых состоит из трех компонентов: красного, зеленого и синего, что можно заметить, рассмотрев экран поближе (через увели­чительное стекло).

Таким образом, для изображения, состоящего из 1024 рядов, содержащих 1024 пиксела каж­дый, потребуется такой объём памяти, который превысит емкость обычно­го гибкого диска.

Изображение в растровом формате имеет один недостаток: размер изображения нельзя произвольно увеличить. Так как, един­ственный способ увеличения изображения — увеличить размер пикселов. Но этоприводит к зернистому изображению — явлению, которое часто наблюдается в цифровых фотоаппаратах.

Векторный форматпредставления изображений пре­одолевает эту проблему. Векторное изображение — это набор ли­ний и дуг. Такое описание заставляет само устройство рисовать изображение, а не воспроизводить комбинацию пикселов.

Различные шрифты, в со­временных принтерах и мониторах, часто кодируются именно таким способом, для того чтобы размер символа сделать более гибким.

Такие шрифты называют масштабируемыми шрифтами. Например, шрифт TrueType(разработанный ком­паниями Microsoftи AppleComputer) представляет собой описание того, как следует рисовать символы в тексте. Или шрифт PostScript(разработанный корпорацией AdobeSystems), который предоставляет средства для описания сим­волов как графических данных.

Векторный формат распространен в авто­матизированном проектировании. Он позволяет создавать трехмерные объекты и управлять их отображением на мониторе.

Однако, векторный формат не обеспе­чивает высокого фотографического качества изображений, которое доступно в растровом формате. Именно поэтому растровый формат используется в современных циф­ровых камерах.
1.1.6.4.     Представление звука
Способ кодирования звуковой информации состоит в том, что измеряется амплитуда сигнала через равные промежутки времени и записывают­ся полученные значения. Например, последовательность 0, 1.5, 2.0, 1.8, 2.1, 2.5, 4.0, 3.0, 0 описывает волну звука, амплитуда которой сначала увеличивается, за­тем немного уменьшается, затем снова повышается и, наконец, падает до 0.

Звуковая волна





                                    0     1.5     2.0    1.8    2.1     2.5    4.0    3.0     0

Амплитуда

Рис. 1.7. Звуковая волна

Такой способ кодирования, в котором частота дискретизации состав­ляет 8000 отсчетов в секунду, используется уже давно в дальней телефонной связи. Голос на одном конце канала кодируется в виде числовых значений, от­ражающих амплитуду звукового сигнала, восемь тысяч раз в секунду. Эти значе­ния затем передаются по каналам связи и используются для воспроизведения звука на приемном конце канала связи.

Может показаться, что 8000 отсчетов в секунду — это большая частота дискретизации, но для высокой точности воспроизведения музыки эта частота недостаточна. Для получения качественного звучания на современных музыкальных компакт-дисках используется частота дискретизации, равная 44 100 отсчетов в секунду.

Для данных, получаемых при каждом отсчете, отводится 16 битов памя­ти (или 32 бита для стереозаписей). Таким образом, для хранения одной секунды звучания требуется более миллиона битов.

Для кодирования звуков в музыкальных синтезаторах, компьютерных играх и звуках сопровождающих веб-страницы используется более экономная система кодирования, которая называется цифровым интерфейсом музыкальных инструментов (MIDI— MusicalInstrumentDigitalInterface).

При использовании стандарта MIDIне требуется столько места в памяти, как при дискретизации звукового сигнала, так как эта система кодирует указания, как следует порождать музыку, а не сам звуковой сигнал. Точнее, MIDIкодирует информацию о том, какой инструмент должен играть, какую ноту и какова продолжительность звучания этой ноты. Это означает, что для кларнета, играющего ноту ре в течение двух секунд, потребуются три байта, а не более двух миллионов битов, как в случае дискретизации сигнала с частотой 44 100 отсчетов.

Из вышесказанного видно, что стандарт MIDIболее похож на нотную запись, которую чита­ет исполнитель, чем на само исполнение. Недостатком метода является то, что музыкальная за­пись в стандарте MIDIможет звучать по-разному в исполнении различных му­зыкальных синтезаторов.
    продолжение
--PAGE_BREAK--1.1.7.  Двоичная система счисления 1.1.7.1.     Сложение в двоичной системе счисления
Вспомним правила сложения в начальной школе по отношению к деся­тичнойсистеме счисления:

    0        1       0       1

 + 0
     +0     +1     +1

    0        1       1     10

Сумма двух чисел находится сложением чисел в правом столбце и делается запись в младший разряд полученной суммы под столбцом, а в старший разряд, если он появляется, в следующий столбец слева и продолжаем сложение.




Например, надо сложить два числа в двоичной системе счисления:

 
+
00011001

   00111010


Начинаем сложение 1 и 0 в правом столбце, получаем единицу, которую записываем под столбцом. Теперь мы складываем 0 и 1 в следующем столбце, получаем единицу, которую записываем под столбцом сложенных чисел. Далее складываем два нуля из следующего столбца и получаем 0. Записываем 0 под столбцом. На этом этапе процесс решения выглядит следующим образом:

 +00011001

  00111010  

            011


Теперь складываем две единицы в следующем столбце, получаем 10. Записываем 0 под этим столбцом, а 1 переносится влево и записывается над следующим столбцом.                          

        1


+
00011001

  00111010


          0011


Следую­щие три единицы (две единицы чисел и одна единица переноса) в сумме дают 11. Записываем 1 в результат, и 1 в следующий столбец слева. Теперь решение выглядит так:

        1


+
00011001

  00111010


         10011

Далее складываем 0, 1 и 1 переноса получаем 10 и записываем 0 под этим столбцом, а единица переноса записывается над следующим левым столбцом.




--PAGE_BREAK--1.1.8.  Хранение целых чисел 1.1.8.1.     Представление в двоичном дополнительном коде
Наиболее распространенной системой представления целых чисел в современ­ных компьютерах является представление в двоичном дополнительном коде (two'scomplementnotation). В этой системе используется фиксированное число битов для представления числового значения.

В современном оборудовании используется кодировка, в которой каждому значению отводится 32 бита. Такой подход позволяет хранить большой диапазон чисел. Для наглядности рассмотрим этот подход на коротких си­стемах представления.

На рисунке 1.9 изображены два представления в двоичном дополнительном коде: набор из трех битов и набор из четырех битов.

Такая таблица кодов строится, начиная с цепочки, состоящей из одних нулей, затем отсчитываются значения до цепочки, состоящей из нуля, за кото­рым следуют единицы. Эти наборы битов являются представлениями значений 0, 1, 2, 3 и т. д. Последовательности, которые являются кодами отрицательных чисел, начинаются с цепочки битов, состоящей из одних единиц. Затем отсчиты­ваются в обратном порядке до цепочки, содержащей единицу, за которой следу­ют нули. Эти наборы битов представляют числа -1, -2, -3 и т. д. Если труд­но считать в обратном порядке в двоичной системе счисления, можно начать считать с конца таблицы, с цепочки, состоящей из единицы и нулей, и считать до цепочки, состоящей из единиц.

Надо обратить внимание на то, что в представлении в двоичном дополнительном коде крайний слева разряд обозначает знак числа. Поэтому его называют знаковым разрядом (signbit). Знаковый разряд отрицательных чисел равен 1, а положительных чисел — 0.

Есть удобное соотношение между записью положительного и отрица­тельного чисел, одинаковых по модулю. Они совпадают, если их читать справа налево, до первой единицы включительно, а с этого места они являются дополне­ниями друг друга. Дополнением набора битов является набор битов, который получается  путем замены всех нулей на единицы и наоборот, т.е. дополнении до N
-1, где N — минимальное число, вызывающее перенос в следу­ющий разряд при данном количестве разрядов (для 4-битового кода это 16). Это дополнение называют также инверсией. На­пример, 0010 и 1110 — дополнения друг друга.
                  Наборы из трех бит                     Наборы из четырех битов

Набор битов

Значение

011

3

010

2

001

1

000



111

-1

110

-2

101

-3

100

-4

Набор битов

Значение

0111

7

0110

6

0101

5

0100

4

0011

3

0010

2

0001

1

0000



1111

-1

1110

-2

1101

-3

1100

-4

1011

-5

1010

-6

1001

-7

1000

-8


Рис. 1.9. Таблицы кодов 3-х и 4-х битовых
Например, возьмем два числа в 4-битовом представ­лении 2 и -2. Они заканчиваются на 10, но запись числа 2 начинается с 00, а числа -2 — с 11. Это наблюдение может помочь найти алгоритм для получения записи отрицательного числа из записи положительного и наоборот, когда эти числа равны по модулю. Мы просто переписываем исходную последо­вательность справа налево до тех пор, пока не будет переписана единица, затем мы переписыва­ем оставшиеся разряды, заменяя их дополнениями (т.е. заменяя нули на единицы, а единицы на нули). Обратите внима­ние, что самое маленькое отрицательное число в представлении в дополнитель­ном коде не имеет положительного эквивалента.

Представление числа 6   и -6 в 4-битовом дополнительном коде



1

1







1



1



Рис. 1.10. Представление числа -6

в 4-битовом дополнительном коде
Исходя из свойств представления чисел в двоичном дополнительном коде можно представить алгоритм их декодирования.

Если знаковый бит записи равен 0, то эта последовательность двоичной записи числа.

Например, 0110 является представлением числа 6, потому что 110 является двоичной записью шести.

Если знаковый разряд равен 1, значит, перед нами отрицательное число и надо только найти его модуль. Переписыва­ем исходную последовательность справа налево, пока не будет переписана 1, за­тем переписываем оставшиеся биты, дополняя их. И, наконец, расшифровываем полученную последовательность, как если бы она была двоичной записью числа.

Например, переведём последовательность 1010 в десятичную систему счисления. Сначала определяем — перед нами отрицательное чис­ло, так как знаковый разряд равен 1. Следовательно, переписываем запись как 0110. Определяем, что она является представлением числа 6, и делаем вывод о том, что исходный набор битов является представлением числа -6.
    продолжение
--PAGE_BREAK--1.1.8.2.     Сложение в двоичном дополнительном коде
Алгоритм сложения чисел в двоичном дополнительном коде такой же, как для двоичного сложения, только здесь все коды, включая результат операции, будут иметь одинаковую длину. Это значит, что если в ре­зультате сложения появляется дополнительный бит с левого края, он будет отсе­чен. Именно поэтому 0101 и 0010 в сумме дают 0111, а сумма 0111 и 1011 равна 0010 (0111 + 1011 = 10010, которая усекается до 0010).

Рассмотрим примеры сложения в дополнительном коде. В каж­дом случае десятичная запись представлена 4-битовым кодом, а результат сложения опять переведен в десятичную систему счисления.

Обратим внимание на то, что согласно правилам традиционной алгебры, которые мы  изучали в школе, то в третьем примере нам бы потребовалась совсем другая операция (вычитание). С другой стороны, в двоичном дополни­тельном коде мы можем вычислить результат, во всех случаях применяя алго­ритм сложения.

В этом и состоит главное преимущество представления чисел в двоич­ном дополнительном коде: сложение любых комбинаций положительных и отрицательных чисел может быть выполнено с использованием одного алгоритма и, следовательно, одной схемы.


Сложение

в десятичной системе счисления

Сложение

в двоичном дополнительном коде

Результат сложения в десятичной записи

+
4

3

+
0100

 0011

0111

7

+
-2

-3


+
1110

 1101

1011

-5

+
6

-2


+
0110

 1110

0100

4


Рис. 1.11. Таблица сложений чисел

Например, операция вычитания 7-5 аналогична операции сложения 7 + (-5). Следовательно, если потребуется вычесть 5 (с кодом 0101) из 7 (с кодом 0111), то машина, прежде всего, заменит 5 на -5 (с кодом 1011) и затем выполнит операцию сложения, результатом которой будет 0010, то есть код числа 2:

-
7             -0111                  +0111

5
             0101                   1011

2                                         0010
1.1.8.3.     Проблема переполнения
Есть проблема в любом представлении чисел в двоичном дополнительном коде — ограничение на размер чисел, представляемых данным количеством битов. Например, нельзя получить пра­вильного ответа, выполнив операцию сложения 5 + 4, если будем выполнять сложение в 4-битовом двоичном дополнительном коде. Ведь у числа 9 нет соответствующей записи. На самом деле мы получим ответ — 7. Такая ошибка называется переполнением (overilov), она возникает, когда нужно сохранить число, не попадающее в диапазон чисел, которые могут быть представлены в двоичном дополнительном коде. Переполнение возникает, когда нужно сложить два положительных или два отрицатель­ных числа. В обоих случаях можно проверить, есть ли ошибка, посмотрев на знаковый разряд полученного результата, то есть переполнение возникает, если сумма двух положительных чисел имеет код отрицательного числа или сумма двух отрицательных чисел имеет код положительного числа.

Большинство машин манипулируют более длинными последовательностями битов, чем те, которые здесь обсуждаются, и операции с большими числами не вызывают переполнения. В настоящее время принято использовать 32-битовые последова­тельности для хранения чисел в двоичном дополнительном коде, что позволяет порождать числа до

2 147 438 647, прежде чем возникнет переполнение. Если нужно записать большее число, то можно использовать более длинный код или можно изменить единицы измерения. Например, использование в расчетах километров, а не метров позволит уменьшить размер чисел и достичь необходимой точности вычислений.

Проблема состоит в том, что компьютер может ошибаться, и пользова­тель должен знать о возможной опасности такой ошибки. Программисты и пользо­ватели из-за своей  самоуверенности игнорируют тот факт, что маленькие числа могут складываться и порождать большие. Например, раньше было  приня­то  использовать  16-битовый двоичный код, который означал, что переполнение не возникнет, пока не появится значение 215 = 32 768. Например девятнадцатого сентября 1989 года компьютерная система в госпитале допустила ошибку после долгих лет надежной работы. Исследование показало, что тот день был 32 768-м днем после 1 января 1900 года. Как вы думаете, какова цена этой ошибки?
    продолжение
--PAGE_BREAK--1.1.8.4.     Представление с избытком
Другой способ представления целочисленных значений называется представле­нием с избытком (excessnotation). Коды, соответствующие числовым значениям, имеют одинаковую длину. Для того чтобы составить таблицу кодов, сначала нужно выбрать длину последовательности битов, затем выписывать эти наборы в пря­мом порядке. Можно заметить, что код с одной 1 в позиции старшего разряда находится примерно посередине списка. Пусть он будет представлением нуля; коды до него используются для представления 1, 2, 3 и т. д., коды после него используются для -1,-2, -3 и т. д. Окончательный вариант таблицы 4-битовых кодов  изображен в таблицах на рис 1.12. Можно заметить, что число 5 имеет код 1101, а чис­ло -5 имеет код 0011. Обратите внимание на то, что различие между представле­нием в двоичном дополнительном коде и избыточном коде заключается в том, что знаковый разряд у них имеет противоположное значение.

Таблица кодов, изображенная на рисунке 1.12, называется представлением с избытком восемь. Для того чтобы понять, почему это так, сначала переведём коды из таблицы в десятичную систему счисления, как обычный двоичный код, и сравним полученные значения со значениями в таблице. В каждом случае мы обна­ружим, что полученный результат превосходит код в представлении с избытком на восемь. Например, последовательность 1100 в двоичной системе является ко­дом 12, но в представлении с избытком она является кодом 4; последователь­ность 0000 в двоичной системе является кодом 0, а в представлении с избыт­ком — кодом 8. Точно так же 5-битовое представление с избытком будет на­зываться представлением с избытком 16, так как, например, последователь­ность 10000  будет  кодом  0,  а  не  16,  как  в  двоичной  записи.

Можно убе­диться, что 3-битовое представление с избытком является представлением с избытком четыре.



Набор битов

Значение



Набор битов

Значение

1111

7



111

3

1110

6



110

2

1101

5



101

1

1100

4



100



1011

3



011

-1

1010

2



010

-2

1001

1



001

-3

1000





000

-4

0111

-1



 
0110

-2



 
0101

-3



 
0100

-4



 
0011

-5



 
0010

-6



 
0001

-7



 
0000

-8



 


Рис. 1.12. 4-битовое и 3-битовое представление с избытком
    продолжение
--PAGE_BREAK--1.1.9.Хранение дробей
Для хранения чисел с дробной частью требу­ется хранить не только двоичное представление числа, но также позицию разде­лительной точки. Общепринятым способом хранения дробей является представ­ление с плавающей точкой.
1.1.9.1.     Представление с плавающей точкой
Рассмотрим представление чисел с плавающей точкой (floating-pointnotation) на приме­ре. Для хранения числа будем использовать только 1 байт памяти. В машинах обычно используются более длинные коды, а этот 8-битовый фор­мат является уменьшенным аналогом существующих систем, и позволяет объяс­нить основные понятия.

Сначала, старший разряд бита назовем знаковым разрядом. Как и рань­ше, 0 в позиции знакового разряда означает, что число положительное, 1 в пози­ции знакового разряда означает, что число отрицательное. Затем разделим остав­шиеся в байте семь разрядов на две группы или два поля: порядок (exponentfield) и мантиссу (mantissafield). Пусть первые три бита после знакового будут поряд­ком, а оставшиеся четыре — мантиссой.

Теперь рассмотрим значение каждой из частей на примере. Байт содержит такую последовательность битов: 00101011. Проведем анализ этой последовательности, применяя определения, данные выше: знаковый разряд равен, порядок — 010 и мантисса — 1011. Чтобы расшифровать значение, хранящееся в байте, сначала извлечем мантиссу и поместим слева от нее разделительную точку, получим: .1011.

                                      

                                   Позиции битов





















 

                                                                                                   

                                                                                   Мантисса

Знаковый разряд        Порядок

         Рис. 1.13. Порядок представления дробных чисел                          

Затем извлечем порядок (010) и переведем его как 3-битовое представление с избытком в десятичную систему счисления. В нашем случае код порядка явля­ется представлением 2. Переместим разделительную точку на 2 бита вправо (отрицательный порядок означает, что точку нужно перемещать влево). Следовательно, мы имеем последовательность

10.11,

которая является двоичной записью дроби 23/4. Затем обращаем внимание на то, что знаковый разряд равен, следовательно, перед нами положительное число. Делаем вывод, что в байте 00101011 хранится число 23/4.

Рассмотрим еще один пример. Байт имеет последовательность: 10101010.

Выписываем ман­тиссу

.1010

и перемещаем точку на один бит влево, так как порядок (010) в 3-битовом представлении с избытком является кодом числа -2. Имеем последовательность 0101010, которая является кодом 5/32. Знаковый разряд исходной последовательности ра­вен 1, значит, это число  отрицательное.  Делаем  вывод, что последовательность 10101010 является кодом -5/32.

Чтобы записать число в представлении с плавающей запятой, выполним действия, обратные предыдущим. Например, чтобы записать число 11/8, сначала вы­ражаем его в двоичном представлении и получаем 1.001. Затем переписываем эту последовательность в область мантиссы слева направо, начиная с самой левой единицы в двоичной записи. На этом этапе байт выглядит следующим образом:
                    1001.

Теперь нужно заполнить поле порядка. Для этого представляем мантиссу с раз­делительной точкой слева и определяем число битов и направление, в котором нужно передвинуть точку, чтобы получить исходную двоичную запись. В нашем примере, чтобы получить 01011001, нужно передвинуть точку в .1001 на один бит вправо. Следовательно, порядок равен 1, поэтому записываем 101 (код 1 в представлении с избытком 4) в поле порядка. Наконец, записываем в позицию знако­вого разряда, потому что дробь положительная. Окончательный байт выглядит так: 01011001.

Наиболее важным в преобразовании является заполнение поля ман­тиссы. Правило гласит: выписывать последовательность разрядов двоичной за­писи слева направо, начиная с самой левой 1 в двоичной записи. В качестве примера рассмотрим процесс записи числа 3/8, двоичное представление которого .011. В этом случае мантиссой будет 1100 а не 0110.

Мантисса имеет такой вид, потому что поле мантиссы заполняется, начиная с са­мой левой единицы,
которая появляется в двоичном представлении. Это правило исключает возможность многократной записи одного значения. Оно также означает, что мантисса чисел, не равных нулю, будет всегда начинаться с 1. О таком представлении говорят, что оно нормализованное (normalizedform). Обратите внимание, что представление нуля является особым случаем: его представление с плавающей точкой состоит из одних нулей.
    продолжение
--PAGE_BREAK--1.1.9.2.     Ошибка усечения
Попытаемся записать значение 25/8 в представлении с плавающей точкой, используя для него один байт памяти. Сначала записываем 25/8 в двоичном представлении, получаем код 10.101.

Но, когда мы переписываем его в поле мантиссы, нам не хватает места, и самая правая 1 (которая занимает позицию с весом разряда  ]/8) теряется.

                                               25/8      Исходная запись
                                           10.101    Двоичная запись
                                            10 101    Последовательность битов




                              _  _ _ _   1010       Потерянный бит




                Знаковый                         Мантисса                                    

                                       Порядок                                                  Рис. 1.14. Ошибка усечения

 Если мы на данном этапе будем игнорировать эту проблему и продолжим заполнение поля порядка, то в результате придем к последовательности 01101010, которая является представлением 21/2вместо 25/8. То, что произошло, называется ошибкой усече­ния (truncationerror), или ошибкой округления (round-offerror), и означает, что часть числа потеряна, потому что поле мантиссы недостаточно велико.

Если использовать более длин­ное поле для мантиссы, то количество таких ошибок можно уменьшить.

Например, для хранения чисел в форме представления с плавающей точкой используется, по меньшей мере, 32 бита вместо 8 битов, которые мы использовали здесь. Такой подход по­зволяет также увеличить поле для порядка числа. Но даже в этом формате пред­ставления иногда возникает необходимость более точных расчетов.

Другой причиной ошибки усечения может быть явление, с которым мы уже сталкивались в десятичной системе счисления: проблема бесконечных дробей, таких, например, которые появляются, когда мы пытаемся представить 1/3 в виде десятичной дроби. Некоторые числа просто нельзя точно записать в виде десятичной дроби, независимо от количества цифр, которое мы используем.

Десятичная и двоичная системы счисления различаются тем, что в двоичной системе существует больше чисел с бесконечным представлением, чем в десятичной. Например, дробь 1/10 является бесконечной в двоичном представлении. Представьте, какие проблемы это повлечет за собой, если неосмотрительный пользо­ватель будет использовать представление с плавающей точкой для того, чтобы хранить и производить операции с деньгами. В особенности, если в качестве еди­ницы измерения он будет использовать рубль, то значение в десять копеек будет записано неточно. В этом случае лучше выбрать единицей хранения данных 1 копейку так, чтобы все значения были целыми и могли быть с достаточной точностью представлены в памяти компьютера при помощи двоичного дополнительного кода.

Ошибка усечения и связанные с нею проблемы представляют большую важность для людей, работающих в области численного анализа. Этот раздел математики занимается проблемами, которые возникают при действительных расче­тах, часто очень объемных и требующих высокой точности.

Следующий пример из области численного анализа. Предположим, нам нужно найти сумму следующих трех чисел, используя однобайтовое представление с плавающей точкой:

21/2 + 1/8 + 1/8.

Если мы будем складывать числа в указанном порядке, то сначала прибавим 1/8 к 21/2, получим дробь 25/8, двоичная запись которой — 10.101. К сожалению, когда мы сохраняем это число, возникает ошибка усечения, в результате которой полученная нами сумма будет сохранена как 21/2 (что равно одному из слагае­мых). На следующем шаге мы прибавляем к этой сумме 1/8. Здесь опять возника­ет ошибка усечения, в результате которой мы получаем неправильный ответ 21/2.

Теперь сложим эти числа в другом порядке. Сначала найдем сумму 1/8 и 1/8, которая равна 1/4. В двоичном представлении 1/4 равна .01. Результат первого шага будет храниться в байте 00111000, что верно. Теперь находим сумму 1/4и следующего числа 21/2, получаем значение 23/4, которое хранится в байте 01101011. На этот раз мы получили правильный ответ.

Следовательно, при сложении числовых значений важен порядок их сложения. Проблема состоит в том, что при сложении большого и маленького числа, маленькое число может отсекаться. Поэтому общее правило сложения чисел зву­чит следующим образом: сначала складываем небольшие числа, надеясь, что в сум­ме они дадут число, которое можно сложить с большим. Именно так мы поступили в предыдущем примере.

Разработчики современного коммерческого программного обеспечения защищают неграмотного пользователя от таких проблем, как эта. В обычных програм­мах табличных вычислений пользователь получит правильный ответ, если толь­ко слагаемые не различаются в 106 раз. Следовательно, если вам нужно прибавить единицу к 10 000 000 000 000 000, вы получите 10 000 000 000 000 000, а не 10 000 000 000 000 001.

Проблема сложения важна в прикладных системах (например, в навигационных устройствах), так как незначительная ошибка может увеличиться в процессе дальнейших вычислений и, в конце концов, привести к серьезным последствиям, но для обычных пользователей ПК такой точности вполне достаточно.
    продолжение
--PAGE_BREAK--1.1.9.3.     Преобразование чисел из одной системы счисления в другую
Необходимость перевода чисел из одной системы счисления в другую объясняется тем, что компьютер работает в двоичной системе, а вводим мы данные и получаем их на экран и принтер в десятичной системе счисления. Поэтому необходимо преобразовывать вводимые данные из десятичной системы счисления в двоичную, а выводимые данные – из двоичной в десятичную. В некоторых случаях возникает необходимость преобразовывать десятичные числа в шестнадцатеричные и шестнадцатеричные в десятичные. Преобразование чисел выполняется автоматически по приведенным ниже правилам.

1.   Преобразование из десятичной системы счисления в двоичную  (преобразование из 10 в 2).

Число последовательно делится на основание новой системы 2 до тех пор, пока делитель не станет меньше делимого, после чего полученные нули и единицы (т.е. все остатки) выписываются в обратном порядке.  Напомним, что при переводе чисел из десятичной системы в двоичную систему  остатками могут быть только нули и единицы.

Пример перевода десятичного числа 12 в двоичную систему счисления приведен на рис.1.15.





Рис.1.15. Преобразование числа 12  из десятичной системы счисления в двоичную

Дробная часть десятичного числа преобразуется по другому правилу: дробную часть необходимо последовательно умножать на число 2, записывая получаемые в результате умножения целые части, после чего выписать целые части в прямом порядке. Процесс умножения продолжается до тех пор, пока дробная часть не станет равной нулю либо пока не будет достигнута заданная точность.

Пример перевода десятичного числа 0,25 в двоичную систему счисления приведен на рис.1.16.

В результате получаем двоичное число 01, т.е.  0,2510  =  0.012.

2.            Преобразование двоичных чисел в десятичные.

 



Рис.1.16. Перевод числа 0,25 в двоичную систему счисления

Для преобразования двоичного числа в десятичное необходимо записать сумму членов ряда и вычислить по следующему правилу:

a1*2n-1+a2*2n-2+…+an-1*21+an*20, an+1*2-1+an+2*2-2+…     [1]

где: а – цифра двоичного числа (0 или 1),

        n-  количество двоичных разрядов в целой части числа.

Пример перевода двоичного числа 1010 (здесь n=4) в десятичную систему (используем первую часть выражения [1] – до запятой):

10102 = 1*23 + 0*22 + 1*21 + 0*20= 8+0+2+0 = 1010

Пример перевода дробной части двоичного числа 0.01 в десятичную систему счисления (используем вторую часть выражения [1] – после запятой):

01 = 0*2-1 + 1*2-2 = 0 + ¼ = 0,25.    Получаем  0.012 = 0,2510 .

Для перевода десятичных чисел в любую другую систему счисления используется то же правило, что и в пункте 1 данного параграфа, только последовательно необходимо делить на основание этой другой системы: в восьмеричную – на число 8, в шестнадцатеричную – на число 16. Напомним, что в восьмеричной системе для записи используются цифры от 0 до 7, а в шестнадцатеричной – цифры от 0 до 9 и буквы латинского алфавита A, B, C, D, E, F(букве А соответствует десятичное число 10, букве В – число 11 и т.д.). Так, например, одно и тоже десятичное число 91 будет представлено в различных системах счисления (двоичной, четверичной, восьмеричной, десятичной и шестнадцатеричной) следующим образом:

10110112  = 11234  =  1338  =  9110  = 5B16

Обратный перевод чисел из некоторой системы счисления в десятичную выполняется также в соответствии с правилом [1], только в выражении записывается не множитель 2, а основание данной системы счисления (из четверичной – 4, из восьмеричной – 8 и т.д.).

Для быстрого перевода  чисел  рекомендуется использовать таблицу 1.2 (для чисел от 0 до 15) или компьютерную программу Калькулятор (в режиме Инженерный) либо воспользоваться функциями преобразования пакета Excel.

Таблица 1.2

Продолжение таблицы 1.2



Часто бывает необходимым преобразовывать шестнадцатеричное число в двоичное и обратно. Для этого достаточно каждую цифру шестнадцатеричного числа записать четырьмя двоичными разрядами – тетрадой. И обратно – в двоичном числе справа налево выделить тетрады и заменить их цифрами шестнадцатеричной системы счисления.

Пример. Преобразовать число 3С12А в двоичную систему и обратно. Записываем каждую цифру четырьмя двоичными разрядами: 0011  1100 0001 0010 1010. Отбрасываем левые незначащие нули и получаем двоичное число 111100000100101010. Обратно: отделяем справа налево по 4 разряда (левые два разряда 11 – неполная тетрада) и заменяем их цифрами шестнадцатеричной системы – 3С12А.

Аналогично выполняется преобразование восьмеричного числа в двоичное и обратно. Разница состоит в том, что вместо тетрады используется триада – по три двоичных разряда на каждую цифру восьмеричного числа.
    продолжение
--PAGE_BREAK--


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :