Поймите и затем запомните "один раз и навсегда", как решаются подобные задачи. 110₂ = 1×2²+1×2¹+0×2⁰ = 4+2 = 6₁₀ А теперь посмотрим на картинку во вложении. Три младших разряда, дающие требуемые 110₂, мы не трогаем. А в старшие разряды начинаем добавлять по +1, получая из 000 значения 001, 010, 011... А это ни что иное, как числа 0, 1, 2, ... но только с четвертого бита, а не с первого, поэтому они будут множителями числа 2³ = 8. И будем получать последовательно 0, 8, 16, ... Остается только прибавлять к ним наше исходное 6, получая ряд 6, 14, 22, ...
Долго? Но это из-за разъяснения. А вот пример. Пусть нам надо найти числа, не превышающие 31, такие, что в трех младших разрядах будет 101₂. Как решить? 101₂ = 5. Три бита заняты, счетчик пойдет с четвертого, давая множители 2³=8. Получаем ряд 5, 8+5=13, 2×8+5=21, 3×8+5=29.
Еще пример. Пусть теперь в младших разрядах записано 1010, а границей будет 45. 1010₂ = 10₁₀. Занято 4 разряда, поэтому счетчик пойдет с пятого, порождая множители кратные 2⁴ = 16. Получаем 10, 16+10=26, 2×16+10=42, ...
1. Конвертировать число во float не постандарту IEEE-754
-53.45 (10) = -110101.01110011001 (2)
экспоненциальная запись = -1.1010101110011001 * 10^5
мантисса = -1.1010101110011001
порядок ^5 (10) = 101 (2)
дробная мантисса = 1010101110011001
дробный порядок = 101 + 1111 = 10100
знак минус = 1
ответ:
1 10100 10101011100110010000000000
2. Конвертировать из float не постандарту IEEE-754
исходное 0 100001 1010011010000000000000000
знак = 0
порядок = 100001 - 11111 = 10 = 2 (10)
мантисса = 1.101001101
110.1001101 (2) = 6.6015625 (10) корочи пребризительная 6.6
ответ 6.6015625
всё приблизительно за меня потомучта делал конвертер в местах перевод из 10 в двоичную и наборот а далши я сам поэтому пиши преблезительна
110₂ = 1×2²+1×2¹+0×2⁰ = 4+2 = 6₁₀
А теперь посмотрим на картинку во вложении.
Три младших разряда, дающие требуемые 110₂, мы не трогаем. А в старшие разряды начинаем добавлять по +1, получая из 000 значения 001, 010, 011...
А это ни что иное, как числа 0, 1, 2, ... но только с четвертого бита, а не с первого, поэтому они будут множителями числа 2³ = 8. И будем получать последовательно 0, 8, 16, ... Остается только прибавлять к ним наше исходное 6, получая ряд 6, 14, 22, ...
Долго? Но это из-за разъяснения.
А вот пример. Пусть нам надо найти числа, не превышающие 31, такие, что в трех младших разрядах будет 101₂. Как решить?
101₂ = 5. Три бита заняты, счетчик пойдет с четвертого, давая множители 2³=8. Получаем ряд 5, 8+5=13, 2×8+5=21, 3×8+5=29.
Еще пример. Пусть теперь в младших разрядах записано 1010, а границей будет 45.
1010₂ = 10₁₀. Занято 4 разряда, поэтому счетчик пойдет с пятого, порождая множители кратные 2⁴ = 16. Получаем 10, 16+10=26, 2×16+10=42, ...