Автор работы: Пользователь скрыл имя, 11 Января 2014 в 17:55, курс лекций
Работа содержит конспекты лекций по дисциплине "Микропроцессорные устройства".
Для получения числа
в некоторой позиционной
Для кодирования заданного
Определим, при каком основании p0 для представления данного множества чисел М требуется наименьшее количество аппаратуры (аппаратных затрат). Множество чисел М=pn. Предположим, что объём используемых электронных элементов для обработки каждого разряда пропорционален основанию системы счисления. Тогда для реализации множества чисел М=pn потребуется N электронных схем: N=α*p*n, где α – коэффициент пропорциональности, p- основание системы счисления, n – количество разрядов. Так как lnM=n*lnp => n=lnM/lnp. Подставим в выражение для N значение n. N=α*p*lnM/lnp. Поскольку N есть функция p при прочих постоянных значениях, для определения p0 найдём и приравняем нулю первую производную:
=> lnp-1=0, p0=e.
Таким образом, наиболее экономичным основанием позиционной системы счисления является число e =2.718 .
Из целочисленных значений оснований ближайшими к значению e являются цифры 2 и 3. Код с нецелым основанием e технически нереализуем. По соображениям простоты технической реализации явное преимущество на стороне кода с p =2. Для него необходимы дискретные элементы с двумя устойчивыми состояниями.
Типы данных
Данные – это представление фактов и идей в формализованном виде, пригодном и удобном для фиксации, передачи и переработки в процессе их использования.
Информация – это смысл, который приписывается данным посредством соглашений, принятых при их представлении. Данные являются изображением информации.
Содержание (смысл) сообщения - это информация, а знаки, в которые сообщение воплощено, - это данные.
В ЭВМ используют двоичное представление информации, поэтому символы «0» и «1» являются единственными элементами машинного алфавита. Принято называть символы «0» и «1» двоичными цифрами или разрядами и связывать с ними понятие бита как минимальной единицы представления информации. Восьмиразрядное двоичное число называют байтом. Формат байта представлен на рисунке .
Разряды байта разделены на две группы по четыре двоичных разряда – тетрады.
Иногда к восьми информационным разрядам байта присоединяется девятый разряд. Он используется для контроля правильности передачи байтовой информации в ЭВМ путём определения чётности или не чётности «1» в коде. При значении этого разряда, равном 1, число единиц в передаваемых данных нечётное, а при равном 0 – чётное. Этот метод получил название контроля чётности.
Слово – это последовательность знаков, которую удобно рассматривать как одно целое.
С точки зрения размерности МП поддерживает следующие основные типы данных (рисунок 2)
В данном случае слово – это последовательность из двух байт, имеющих последовательные адреса. Размер слова – 16 бит; биты нумеруются от 0 до 15. Байт, содержащий 15-й бит называется старшим байтом. Младший байт содержит нулевой бит.
Двоичное слово – последовательность из четырёх байт (32 бита), расположенных по последовательным адресам. Нумерация от 0 до 31. Слово, содержащее нулевой бит, называется младшим словом, а слово, содержащее 31-й бит, – старшим словом.
2.2 Двоичная система счисления
В этой системе используются только два символа. Это хорошо согласуется с техническими характеристиками цифровых схем, имеющих только два устойчивых состояния. В качестве символов служит 0 и 1. Основание p =2. Количественный эквивалент некоторого целого n-значного двоичного числа вычисляется согласно формуле (1)
А(2)=аn-1*2n-1+an-2*2n-2+…+a1*
Каждой позиции (разряду) присваивается определённый вес. Вес разрядов равен основанию системы счисления возведённому в степень соответствующую номеру разряда. Рассмотрим двоичное число 10100111. Вычислим количественный эквивалент этого числа. Согласно формуле (2) получим:
1*27+0*26+1*25+0*24+0*23+1*22+
2.3 Шестнадцатеричная система счисления
Данная система счисления
Следующая таблица содержит представления десятичных чисел из диапазона 0-15 в двоичной и шестнадцатеричной системах счисления.
Десятичные числа |
Двоичные числа |
Шестнадцатеричные числа |
0 |
0000 |
0 |
1 |
0001 |
1 |
2 |
0010 |
2 |
3 |
0011 |
3 |
4 |
0100 |
4 |
5 |
0101 |
5 |
6 |
0110 |
6 |
7 |
0111 |
7 |
8 |
1000 |
8 |
9 |
1001 |
9 |
10 |
1010 |
A |
11 |
1011 |
B |
12 |
1100 |
C |
13 |
1101 |
D |
14 |
1110 |
E |
15 |
1111 |
F |
Таблицей удобно пользоваться при преобразованиях чисел из одной системы счисления в другую. Количественный эквивалент некоторого целого n-разрядного числа вычисляется по формуле (1).
A(16)=an-1*16n-1+an-2*16n-2+…+
Например, число F45ED23C в десятичной системы счисления будет следующим:
15*167+4*166+5*165+14*164+13*
Десятичная система счисления
Данная система счисления
A(10)=an-1*10n-1+an-2*10n-2+…+
Перевод чисел из одной системы счисления в другую
Для того чтобы в полной мере использовать системы счисления в своей практической работе необходимо уметь выполнять взаимное преобразование чисел между тремя рассмотренными системами счисления.
Преобразование десятичных чисел в двоичные
Алгоритм преобразования следующий:
Рассмотрим два примера.
1.Преобразовать десятичное число 57 в двоичное число
Шаг Деление Частное Остаток
1 57/2 28 1 (МЗР)
2 28/2 14 0
3 14/2 7 0
4 7/2 3 1
5 3/2 1 1
6 1/2 0 1 (СЗР)
МЗР – младший значащий разряд.
СЗР – старший значащий разряд.
В процессе преобразования следует учитывать, что частное от деления 1 на 2 составляет нуль, а остаток равен 1.
Результат: 5710=1110012.
2. Преобразуем десятичное число 134 в двоичное число.
Шаг Деление Частное Остаток
1 134/2 67 0 (МЗР)
2 67/2 33 1
3 33/2 16 1
4 16/2 8 0
5 8/2 4 0
6 4/2 2 0
7 2/2 1 0
8 1/2 0 1 (СЗР)
Результат: 13410=100001102
Перевод чисел из десятичной системы счисления в
шестнадцатеричную
Практическое использование шестнадцатеричной системы объясняется тем, что число 16 есть число 2 в четвёртой степени. Поэтому шестнадцатеричную цифру используют как средство сокращённой записи 4-разрядного двоичного кода. Общая идея преобразования аналогична рассмотренной выше.
1.Требуется преобразовать число 3276710 в 16-ную систему счисления.
Шаг Деление Частное Остаток
1 32767/16 2047 1510=F16 (МЗР)
2 2047/16 127 1510=F16
3 127/16 7 1510=F16
4 7/16 0 7 (СЗР)
Результат: 3276710=7FFF16
2.Преобразовать число 634.
Шаг Деление Частное Остаток
1 634/16 39 1010=А16 (МЗР)
2 39/16 2 7
3 2/16 0 2 (СЗР)
Результат: 63410=27А16
Любое дробное число
в системе счисления с
A(p)=an-1*pn-1+an-2*pn-2+…+a1*
Рассмотрим операции перевода чисел на примерах.
Перевести в десятичное представление дроби в двоичной системе счисления.
Как и в десятичной системе в двоичной системе для отделения дробной части от целой используется точка. Каждая позиция справа от этой точки имеет свой вес – вес разряда дробной части числа. Значение веса в этом случае равно основанию двоичной системы, возведённому в отрицательную степень. Такие веса – это дроби 1/2, 1/4, 1/8, 1/16, 1/32 и т.д., которые могут быть записаны как 2-1, 2-2, 2-3, 2-4 и т.д.
Преобразовать число:
110100,01001011=1*25+1*24+0*23
+0*2-3+0*2-4+1*2-5+0*2-6+1*2-7
Перевести в десятичное
представление дробь в
1DF2,A1E416=1*163+13*162+15*16
+4*16-4
Рассмотрим проблему представления десятичных дробей в двоичной и шестнадцатеричной системах счисления.
Общий алгоритм перевода десятичной дроби в другую систему счисления можно представить следующей последовательностью шагов.
Пример: Преобразовать десятичное число 0,3437510 в двоичное:
2*0,34375=0,6875 0 (СЗР)
2*0,6875=1,375 1
2*0,375=0,75 0
2*0,75=1,5 1
2*0,5=1 1 (МЗР)
Результат: 0,3437510=0,010112
Перевести в двоичную систему счисления десятичную дробь108,406
10810=11011002
2*0,406=0,812 0 (СЗР)
2*0,812=1,624 1
2*0,624=1,248 1
2*0,248=0,496 0
2*0,496=0,992 0
2*0,992=1,984 1
2*0,984=1,968 1
2*0,968=1,936 1
…………………
Результат перевода следующий: 108,40610 1101100,011001112
Рассмотрим следующий пример: преобразовать десятичное число 634,328125 в шестнадцатеричное
63410=27А16