Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Десятичный n-разрядный дополнительный код произвольного целого числа d определяется как 10n — d





Упакованный BCD формат

Число +А в упакованном формате выглядит следующим образом:

1100 0010 0100 100 011101010

Число +В в упакованном формате выглядит следующим образом:

1100 0010 0101 0011 0011 0011

где старшая тетрада старшего байта- 11002 = С16– знак плюс, остальные тетрады – цифры числа.

Число ─А в упакованном формате выглядит следующим образом:

1101 0111 0101 0000 0010 0101

Число ─В в упакованном формате выглядит следующим образом:

1101 0111 0100 0110 0110 0111

где старшая тетрада старшего байта 11012 = D16– знак минус, остальные тетрады – цифры числа.

Неупакованный BCD формат

Число +А в неупакованном BCD формате выглядит следующим образом:

2B 32 34 39 37 35

Число +В в неупакованном формате выглядит следующим образом:

2B 32 35 33 33 33

где байт 2В – знак плюс, остальные байты – цифры.

Число =─ А в неупакованном BCD формате выглядит следующим образом:

2D 37 35 30 32 35

Число ─ В в неупакованном BCD формате выглядит следующим образом:

2D 37 34 36 36 37

где байт 2D – знак минус, остальные байты – цифры.

ЧИСЛА В ФОРМАТЕ С ПЛАВАЮЩЕЙ ТОЧКОЙ

Представление положительных чисел

2. Двоичные числа А1 и В1 представить как числа с плавающей точкой.

Представим число А1 = 2497,510 в форме числа с плавающей точкой:

· Перевеем модуль числа в двоичную систему счисления;

249710 =1001 1100 0001

0,510 =0,1

2497,510 =1001 1100 0001,1

· Запишем полученное двоичное число в нормализованном виде;

100111000001,12=0,10011 1000 0011 *212

· Для записи порядка используем q=7 разрядов, тогда смещенный порядок:

Mq = 12+2q-1=12+64=140=1100+100000=1001100

· Учитывая знак заданного числа запишем его представление в памяти ЭВМ:

А1 =0.100 1100. 1 0011 1000 0011

Представим число В1 =253.33 и (-В1) в форме числа с плавающей точкой:

· Перевеем модуль числа в двоичную систему счисления;

В1 = 25310 =1111 1101

0,3310 =0, 0100 1101

253,3310 =1111 1101.0100 1101

· Запишем полученное двоичное число в нормализованном виде;

253,3310 =11111101.010011012 =0,1111 1101 0100 1101*28

· Для записи порядка используем 7 разрядов, тогда смещенный порядок:

Mq =8+64=72=1000+1000000=100 1000

· Учитывая знак заданного числа запишем его представление в памяти ЭВМ:

В1=0.100 1000. 1111 1101 0100 1101

Представление отрицательных чисел

Для того чтобы получить запись отрицательного числа - А1 необходимо его мантиссу записать в дополнительном коде и в полученном выражении заменить в разряде знака числа 0 на 1.

МА2 =1111 1101 0100 1101

А2)= 0000 0010 1011 0010

0000 0000 0000 0001

А2)ДОП = 0000 0010 1011 0011

- В1 =1.100 1000. 10 1011 0011

Для того чтобы получить запись отрицательного числа - А1 необходимо его мантиссу записать в дополнительном коде и в полученном выражении заменить в разряде знака числа 0 на 1.

МА1 =1 0011 1000 0011

А1)=01100 0111 1100

0 0000 0000 0001

А1)ДОП = 0 1100 0111 1101

1 =1.100 1100. 0 1100 0111 1101

Сложение чисел в формате с плавающей точкой.

Для этого нужно выравнить порядки чисел, т.е. принять порядок меньшего числа В1 равным порядку большего числа А1,уменьшив мантиссу В1 путем сдвига вправо на число разрядов, равное разности порядков чисел (Ра1 – Ра2 =12-8=4):

В1 =0.100 1100. 0000 1111 1101 0100 1101

Выполним сложение мантисс чисел МА1и МА2

МА1 =0. 1 0011 1000 0011

МА1 =0. 0000 1111 1101 0100 1101

МА1 + МА2 = 0. 1010 1011 1110 1100 1101

Результат положительный (в знаковом разряде ноль), мантисса нормализованная. Запишем результат с учетом порядка в разрядной сетке заданного формата:

А1 + В1 = 0. 1000 1100. 1010 1011 1110 1100 1101

Проверка:

Смещенный порядок 1001100=76

Или с учетом смещения76-64=12

Теперь мантиссу 0. 1010 1011 1110 1100 1101 сдвигаем вправо на 12 разрядов и получаем 1010 1011 1110. 1100 1101 (сдвинули десятичную точку на 12 позиций)

Значит целая часть результата:

2048+512+128+32+16+8+4+2=2750

Дробная часть результата:

1/2+1/4+1/8+1/64=0,8306

Эти же числа сложим в десятичной системе счисления:

А1 + В1= 2497,510 +253,3310 =2750,8310

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

ПРЕДСТАВЛЕНИЕ ИНФОРМАЦИИ В ЭВМ

Записать число А= 24975,─А в двоичном, десятичном,

А1 = 2497,5 и ─А1 формате с плавающей точкой

Двоичный формат

24975 =0 000 0110 0001 1000 1111

─24975 = 1 111 1001 1110 0111 0001


десятичный упакованный

24975 = 1100 0010 0100 1001 0111 0101

─24975 = 1101 0111 0101 0000 0010 0101

десятичный НЕ упакованный

24975 = 0010 1011 0011 0010 0011 0100 0011 1001 0011 0111 0011 0101

─24975 = 0010 1101 0011 0111 0011 0101 0011 0000 0011 0010 0011 0101

формат с плавающей точкой

2497,5 = 0.100 1100. 1 0011 1000 0011

─2497,5 = 1.100 1100. 1100 0111 1101







Date: 2015-05-05; view: 536; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.008 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию