2004-gre-cs-practice-book.pdf/Q22 — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
(Новая страница: « == Вопрос: Q22-4c9f66 == <i>Тут вставьте перевод вопроса. Используйте [https://wiki.4intra.net/Help:%D0%A4%D0%BE%D1%80…»)
 
 
Строка 1: Строка 1:
 
 
== Вопрос: Q22-4c9f66 ==
 
== Вопрос: Q22-4c9f66 ==
  
<i>Тут вставьте перевод вопроса.
+
Согласно стандарту IEEE, 32-разрядное число с плавающей запятой одинарной точности ''N'' определяется как
Используйте [https://wiki.4intra.net/Help:%D0%A4%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5 возможности разметки],  
+
включая формулы и т.п, если будут графы — посмотрите как задать их текстом https://wiki.4intra.net/Graphviz .
+
Потом конечно сотрите инструкции, которые тут курсивом.</i>
+
  
=== Ответы ===
+
<m>N = (-1)^S \times 1.F \times 2^{E-127}</m>
<i>Если ответы простые, однострочные, используйте простой способ задания ответов списком, типа так
+
(префикс «Правильный ответ:» — это дословно, для правильного ответа)</i>
+
  
* Правильный ответ: тут реально правильный ответ
+
где ''S'' — знаковый бит, ''F'' — дробная мантисса, а ''E'' — смещенный показатель степени
* неправильный ответ
+
* еще какой-то неправильный ответ
+
* еще какой-то неправильный ответ
+
* еще какой-то неправильный ответ
+
  
<i>Если ответы длинные, многострочные, или там графы, используйте
+
Число с плавающей запятой хранится в формате ''S : E : F'', где ''S'', ''E'' и ''F'' хранятся в 1 бите, 8 битах и 23 битах соответственно.
[https://wiki.4intra.net/MediawikiQuizzer/ru#.D0.9E.D1.82.D0.B2.D0.B5.D1.82.D1.8B способ задания ответов разделами],  
+
Но такое очень редко встречается. </i>
+
  
 +
Каково десятичное значение числа с плавающей запятой <tt>C1E00000</tt> (шестнадцатеричная система счисления)?
 +
 +
=== Ответы ===
 +
* 26
 +
* −15
 +
* −26
 +
* Правильный ответ: −28
 +
* −59
  
 
=== Объяснение ===
 
=== Объяснение ===
<i>Сначала заполните номер страницы с этим вопросом
 
{{cstest-source|2004-gre-cs-practice-book.pdf|тут-номер-страницы-с-вопросом-22|22}}
 
  
Ну и наконец, вики-разметкой напишите ваше понимание, почему правильный ответ — правильный.</i>
+
Ну, считаем поля на глаз:
 +
 
 +
<code-python>
 +
b_ = bin(0xC1E00000)[2:]
 +
S = b_[:1]
 +
E = b_[1:9]
 +
F = b_[10:]
 +
S, E, F
 +
</code-python>
 +
 +
('1', '10000011', '1000000000000000000000')
 +
 
 +
Видно, что-то отрицательное,
 +
 
 +
Показатель 4.
 +
<code-python>
 +
print(0b10000011-127)
 +
</code-python>
 +
 
 +
<code-python>
 +
print(0b1000000000000000000000)
 +
 +
2097152
 +
</code-python>
 +
 
 +
1.2097152**4 = 2.1415713601250426
 +
 
 +
Надо разобраться, где-то накосячил.
 +
 
 +
 
 +
 
 +
{{cstest-source|2004-gre-cs-practice-book.pdf|21|22}}
 +
 
 +
{{question-ok|[[Участник:StasFomin|StasFomin]] 07:19, 14 декабря 2024 (UTC)}}
  
{{question-ok|}}
+
[[Категория:Float]]
 +
[[Категория:Разобраться]]

Текущая версия на 07:19, 14 декабря 2024

Вопрос: Q22-4c9f66

Согласно стандарту IEEE, 32-разрядное число с плавающей запятой одинарной точности N определяется как

где S — знаковый бит, F — дробная мантисса, а E — смещенный показатель степени

Число с плавающей запятой хранится в формате S : E : F, где S, E и F хранятся в 1 бите, 8 битах и 23 битах соответственно.

Каково десятичное значение числа с плавающей запятой C1E00000 (шестнадцатеричная система счисления)?

Ответы

  • 26
  • −15
  • −26
  • Правильный ответ: −28
  • −59

Объяснение

Ну, считаем поля на глаз:

b_ = bin(0xC1E00000)[2:]
S = b_[:1]
E = b_[1:9]
F = b_[10:]
S, E, F
('1', '10000011', '1000000000000000000000')

Видно, что-то отрицательное,

Показатель 4.

 print(0b10000011-127)
 print(0b1000000000000000000000)2097152
1.2097152**4 = 2.1415713601250426

Надо разобраться, где-то накосячил.


Исходники — вопрос 22 на 21 странице книги «2004-gre-cs-practice-book.pdf»