Курсовая работа (т): Машинные коды, системы счисления, кодировка информации

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Машинные коды, системы счисления, кодировка информации

Содержание

Введение

. Машинные коды, системы счисления, кодировка информации

.1 Машинные коды

.2 Системы счисления

.3 Кодировка информации

. Практическое применение машинных кодов, систем счисления, кодировки информации

.1 Практическое применение машинных кодов

.2 Практическое применение систем счисления

.3 Практическое применение кодировки информации

Заключение

Список использованной литературы

Приложение

Введение

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

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

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

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

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

Для любой операции над информацией (даже такой простой, как сохранение) она должна быть как-то представлена (записана, зафиксирована). Этот процесс имеет специальное название - кодирование информации.

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

1. Машинные коды, системы счисления, кодировка информации

.1 Машинные коды

Машинный код (также употребляются термины собственный код, или платформенно-ориентированный код, или родной код, или нативный код - от англ. native code) - система команд конкретной вычислительной машины, которая интерпретируется непосредственно микропроцессором или микропрограммами данной вычислительной машины.

Каждая модель процессора имеет свой собственный набор команд, хотя во многих моделях эти наборы команд сильно перекрываются. Говорят, что процессор A совместим с процессором B, если процессор A полностью «понимает» машинный код процессора B. Если процессор A знает несколько команд, которых не понимает процессор B, то B несовместим с A.

«Слова» машинного кода называются машинными инструкциями. Каждая из них описывает элементарное действие, выполняемое процессором, такое как «переслать байт из памяти в регистр». Программа - это просто длинный список инструкций, выполняемых процессором. Раньше процессоры просто выполняли инструкции одну за другой, но новые суперскалярные процессоры способны выполнять несколько инструкций за раз. Прямой поток выполнения команд может быть изменён инструкцией перехода, которая переносит выполнение на инструкцию с заданным адресом. Инструкция перехода может быть условной, выполняющей переход только при соблюдении некоторого условия.

Также инструкции бывают постоянной длины (у RISC, MISC-архитектур) и диапазонной (у CISC-архитектур; например, для архитектуры x86 команда имеет длину от 8 до 120 битов).

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

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

В системе прямых кодов существует два различных представления ноля:

- положительный 0;

- отрицательный 0.

Оба представления совершенно равноправны.

Представление числа в привычной форме "знак"-"величина", при которой старший разряд ячейки отводится под знак, а остальные - под запись числа в двоичной системе, называется прямым кодом двоичного числа. Например, прямой код двоичных чисел 1001 и -1001 для 8-разрядной ячейки равен 00001001 и 10001001 соответственно.

Положительные числа в ЭВМ всегда представляются с помощью прямого кода. Прямой код числа полностью совпадает с записью самого числа в ячейке машины. Прямой код отрицательного числа отличается от прямого кода соответствующего положительного числа лишь содержимым знакового разряда. Но отрицательные целые числа не представляются в ЭВМ с помощью прямого кода, для их представления используется так называемый дополнительный код.

Дополнительный код положительного числа равен прямому коду этого числа. Дополнительный код отрицательного числа m равен 2k-|m|, где k - количество разрядов в ячейке.

Как уже было сказано, при представлении неотрицательных чисел в беззнаковом формате все разряды ячейки отводятся под само число. Например, запись числа 243=11110011 в одном байте при беззнаковом представлении будет выглядеть следующим образом:1 1 1 1 0 0 1 1

При представлении целых чисел со знаком старший (левый) разряд отводится под знак числа, и под собственно число остаётся на один разряд меньше. Поэтому, если приведённое выше состояние ячейки рассматривать как запись целого числа со знаком, то для компьютера в этой ячейке записано число -13 (243+13=256=28).

Но если это же отрицательное число записать в ячейку из 16-ти разрядов, то содержимое ячейки будет следующим: 1111111111110011.

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

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

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

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

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

Алгоритм получения дополнительного кода отрицательного числа.

Модуль числа представить прямым кодом в k двоичных разрядах.

Значения всех бит, кроме знакового, инвертировать: все ноли заменить на единицы, а единицы на ноли (таким образом, получается k-разрядный обратный код исходного числа); К полученному обратному коду, прибавить единицу к младшему разряду с учетом переносов.

1.2 Системы счисления

Система счисления (далее СС) - совокупность приемов и правил для записи чисел цифровыми знаками.

Наиболее известна десятичная СС, в которой для записи чисел используются цифры 0,1,9. Способов записи чисел цифровыми знаками существует бесчисленное множество. Любая предназначенная для практического применения СС должна обеспечивать:

возможность представления любого числа в рассматриваемом диапазоне величин;

единственность представления (каждой комбинации символов должна соответствовать одна и только одна величина);

простоту оперирования числами;

В зависимости от способов изображения чисел цифрами, системы счисления делятся на непозиционные и позиционные. Непозиционной системой называется такая, в которой количественное значение каждой цифры не зависит от занимаемой ей позиции в изображении числа (римская система счисления). Позиционной системой счисления называется такая, в которой количественное значение каждой цифры зависит от её позиции в числе (арабская система счисления). Количество знаков или символов, используемых для изображения числа, называется основанием системы счисления.

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

Запись чисел может быть представлена в виде:

 (1)

где A(D) - запись числа A в СС D;i - символ системы, образующие базу.

По этому принципу построены непозиционные СС.

В общем же случае системы счисления: A(B)=a1B1+a2B2 +...+anBn. Если положить, что Bi=q*Bi-1, а B1=1, то получим позиционную СС. При q=10 мы имеем дело с привычной нам десятичной СС.

На практике также используют другие СС.

Таблица 1. Системы счисления

q

Название системы счисления

Цифры

2

двоичная

0,1

3

троичная

8

восьмеричная

0,...,7

16

шестнадцатеричная

0,...,9,A,...,F


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

Если основание системы q превышает 10, то цифры, начиная с 10, при записи обозначают прописными буквами латинского: A,B,...,Z. При этом цифре 10 соответствует знак 'A', цифре 11 - знак 'B' и т.д.

В позиционной СС число можно представить через его цифры с помощью следующего многочлена относительно q:

=a1*q0+a2*q1+...+an*qn (2)

Выражение (2) формулирует правило для вычисления числа по его цифрам в q-ичной СС. Для уменьшения количества вычислений пользуются т.н. схемой Горнера. Она получается поочередным выносом q за скобки:

=(...((an*q+an-1)*q+an-2)*q+...)*q+a1 (3)

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

1.3 Кодировка информации

машинный код счисление информация

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

Кодирование информации необычайно разнообразно. Указания водителю автомобиля кодируются в виде дорожных знаков. Музыкальное произведение кодируется с помощью знаков нотной грамоты, для записи шахматных партий и химических формул созданы специальные системы записи. Любой грамотный компьютерный пользователь знает о существовании кодировок символов. Географическая карта кодирует информацию о местности. Необходимость кодирования речевой информации возникла в связи с бурным развитием техники связи, особенно мобильной связи. Людьми были придуманы специальные коды: Азбука Брайля, азбука Морзе, флажковая азбука. Таких примеров можно приводить очень много. Известно, что одну и ту же информацию мы можем выразить разными способами.

Например, каким образом вы можете сообщить об опасности?

Если на вас напали, вы можете просто крикнуть: “Караул!!” (англичанин крикнет “Неlр me!”).

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

На оживленном перекрестке регулировщик помогает избежать аварии с помощью жестов.

В театре пантомимы вся информация передается зрителю исключительно с помощью мимики и жестов.

Если ваш корабль тонет, то вы передадите сигнал “SОS” (...- - -...).

На флоте помимо азбуки Морзе используют также семафорную и флажковую сигнализацию.

Набор знаков, в котором определен их порядок, называется алфавитом.

Существует множество алфавитов.

Алфавит кириллических букв (А, Б, В, Г, Д, Е,...)

Алфавит латинских букв (А, В, С, D, Е, F,...)

Алфавит десятичных цифр(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

Алфавит знаков зодиака и др.

Имеются, однако, наборы знаков, для которых нет какого-то общепринятого порядка:

Набор знаков азбуки Брайля (для слепых);

Набор китайских идеограмм;

Набор знаков планет;

Набор знаков генетического кода (А, Ц, Г, Т).

Особенно важное значение имеют наборы, состоящие всего из двух знаков:

Пара знаков (+, -);

Пара знаков “точка”, “тире” (., -)

Пара цифр (0, 1).

Пара ответов (да, нет).

Таким образом, кодирование информации - это процесс формирования определенного представления информации. Значимость кодирования возросла в последние десятилетия в связи с внедрением ЭВМ. появлением компьютеров возникла необходимость кодирования всех видов информации, с которыми имеет дело и отдельный человек, и человечество в целом. Письменность и арифметика - есть не что иное, как система кодирования речи и числовой информации. Информация никогда не появляется в чистом виде, она всегда как-то представлена, как-то закодирована.

Основными атрибутами кодирования являются:

Код - это набор знаков, упорядоченных в соответствии с определенными правилами того или иного языка, для передачи информации.

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

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

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

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

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

Таблица 2. Виды информации

Вид информации

Двоичный код

Числовая

10110011

Текстовая


Графическая


Звуковая


Видео