1.Запишите прямые коды десятичных чисел в однобайтовом формате: а) 64 б) 58 в) 72 г) -96 2. Запишите двоичные числа в дополнительном коде: а) 1010 б) -1001 в) -11 г) -11011
3. Переведите в прямой код числа, записанные в дополнительном коде, и найдите их десятичные эквиваленты: а) 00000100 б) 11111001 4. Представьте целые числа в 16-разрядной ЭВМ: а) 25 б) -25 в) 801 г) -610.
Ответы на вопрос:
1.
а) 64 = 01000000
б) 58 = 00111010
в) 72 = 01001000
г) -96 = 11100000
2.
а) 1010 = 00001010 = 00001010
б) -1001 = 10001001 = 01110111
в) -11 = 10000011 = 01111101
г) -11011 = 10011011 = 01100101
3.
а) 00000100 = 00000011 = 11111100 = -124
б) 11111001 = 11111000 = 00000111 = 7
4.
а) 25 = 0000000000011001
б) -25 = 1000000000011001
в) 801 = 0000001100100001
г) -610 = 1000001001100010
Объяснение:
1. Для выполнения задания нужно:
1) Перевести числа в двоичную систему
2) Написать числа в K-разрядную сетку
3) Заполнить пустые места нулевыми битами
В последнем числе есть знак минус, поэтому на первое место поставим не ноль, а единицу.
2. Чтобы перевести число в доп. код нужно прибавить к числу один.
Первое число без знака, поэтому в прямом, обратном и дополнительном кодах записывает одинаково.
В последних трёх числах есть знак минус, поэтому заменим его на единицу. Переведём число в обратный код. Чтобы это сделать нужно заменить все единицы на нули, а нули - на единицы, включая знаковый бит. После выполнения предыдущих действий прибавим к результату единицу.
Числа нужно записать в доп. коде, поэтому будем использовать 8-битовый формат.
3. Числа записаны в доп. коде, поэтому для перевода вычтем из них единицу, а потом из обратного переведём в прямой.
4. Чтобы представить числа в 16-разрядной ЭВМ нужно проделать то же самое, что и с 8-разрядной, но использовать в два раза больше битов.
program c; vara: byte; beginread(a); if a = 1 then write('январь') else if a=2 then write('февраль') else if a=2 then write('март')else if a=2then write('апрель')else if a=2 then write('май')else if a=2 then write('июнь')else if a=2 then write('июль')else if a=2 then write('август')else if a=2 then write('сентябрь')else if a=2 then write('октябрь')else if a=2 then write('ноябрь')else if a=2 then write('декабрь'); end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Ziko8888120.10.2020 02:27
-
Беня201817.10.2022 16:18
-
Елизавета5111101.09.2022 13:17
-
covepoxamu03.06.2020 22:15
-
popopoppop201623.02.2023 00:05
-
ксения653827.09.2021 02:53
-
saha20200029.12.2020 03:22
-
lapyukdima07.06.2022 06:52
-
ewvyevs07.04.2020 21:59
-
Танюша270502.05.2022 08:44
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.