|
0 / 0 / 0
Регистрация: 20.11.2011
Сообщений: 13
|
|
Представление числа float в двоичной системе22.11.2011, 18:40. Показов 17280. Ответов 40
Метки нет (Все метки)
Задачка такая - написать программу наСи!!!, которой мы задаем число типа float, а она выдает его нам так как его видит компьютер(в двоичной системе?).
0
|
|
| 22.11.2011, 18:40 | |
|
Ответы с готовыми решениями:
40
Представление float в двоичной системе |
|
0 / 0 / 0
Регистрация: 20.11.2011
Сообщений: 13
|
||
| 23.11.2011, 14:40 [ТС] | ||
|
0
|
||
|
|
||
| 23.11.2011, 16:01 | ||
|
0
|
||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
||||||||||||
| 23.11.2011, 16:29 | ||||||||||||
0
|
||||||||||||
|
|
|
| 23.11.2011, 16:46 | |
|
Вариант из поста #9 печатает "c145851f" (что заведомо правильно)
Если перевести твою печать в 16-ричный формат, то получится "1f8545c1". Т.е. твоя печать в неправильном порядке рисует байты. Потому что не учитывает, что intel - little endian и по меньшим адресам находится младшая часть, а не старшая
0
|
|
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
|
| 23.11.2011, 16:55 | |
|
а какие биты отвечают за порядок мантиссы в double?
0
|
|
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
||||||||||||||||
| 23.11.2011, 16:57 | ||||||||||||||||
|
Evg, с вами мы потом разберёмся. Чё там и как у меня печатает, я знаю. Что называется as is
Пока же: Eaax, слушай меня внимальтельно. Начни не стого, КАК программа преобразовавает число. Начни с того ЧТО она преобразовывает Итак,
Пишем:
Для того, чтобы нам это узнать, идём ко мне в личку и получаем адрес, с котрого скачиваем отладчик OllyDbg, тратим часа 2 на его изучение. После этого повторяем шаги и приаттачиваемся отладчиком к запущенному процессу. Находим там адрес, например 22ff48 и наблюдаем (см. вложение) что там по этому адрес. Видим: 1f854541 Четыре байта, как и положено. Понял? Именно эта муть и есть -12.345 Если тебя интересует, как именно машина преобразует 1f854541->12.345 разбирайся. А я же пока обращу твоё внимание на нули и единицы. Цель: преобразовать 1f854541 в ноли и единицы. Как- твои дела, я же воспоьлзуюсь сторонним инструментом-калькулятором (спроси меня, где я его взял) и вижу:
...А если будет размер float другой, то 8 байт Будет, например Вот, собсно и всё. И не гадай на кофейноё гуще где там должно чё быть, посмотри что называется своими глазами. Ставь мне плюс, а то я я в прошлый раз ничё не получил. ...Код из поста номер 10- самый лучший код из всех, которые ты видел, там одно слабое место- нестандартная функция itoa, но я тебя предупредил. Не слушай никого, короче. //////////////////////////////////////////////////////////////////////////////////////////////
1
|
||||||||||||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 23.11.2011, 17:09 | |
|
вот картинка, там адрес и чё по нему лежит. Прошу прощения, -12.456 выглядит как :
1F8545C1, а не 1f854541 Но не суть.
0
|
|
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
|
| 23.11.2011, 17:12 | |
|
0
|
|
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 23.11.2011, 17:20 | |
|
Чё-то я напутал похоже, 12.456 есть:
C74B4741 Добавлено через 59 секунд 11000111 01001011 01000111 01000001
0
|
|
|
|
||||
| 23.11.2011, 17:25 | ||||
|
Добавлено через 41 секунду Добавлено через 59 секунд Да, кстати, чтобы не мучиться, где там старшая часть, а где младшая, возьми два значения 1.0 и -1.0 и посмотри двоичное представлени
0
|
||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|||||||||||
| 23.11.2011, 17:51 | |||||||||||
|
Всё, путаницу ликвидировал
То есть моя задача щас чтобы автор научился сам так наблюдать значения ячеек памяти.
0
|
|||||||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
||||||
| 23.11.2011, 18:09 | ||||||
|
Да и вот вывод:
...А в чём прикол-то?
0
|
||||||
|
|
|||||||
| 23.11.2011, 18:14 | |||||||
0
|
|||||||
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
||||||||
| 23.11.2011, 18:15 | ||||||||
![]() у меня что-то не сходится (в смысле не понимаю) вот код
где D - формат представления числа с плавающей точкой в эвм. почему расходятся цифры? Почему старший бит порядка всегда равен 1, это связано с тем что порядок (для условности p) не может быть
0
|
||||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 23.11.2011, 18:25 | |
|
0
|
|
|
|
||||
| 23.11.2011, 18:41 | ||||
|
alkagolik, см. http://www.softelectro.ru/ieee754.html раздел 7.5
1 бит знак, 11 бит экспонента, 52 бита мантисса 0x402e000000000000 в двоичном виде будет 0100000000101110000.... жирным выделена мэкспонента (порядок) Если ты задашь число меньшее единицы, то в старшем бите порядка будет ноль (что после вычитания bias'а будут означатьотрицательную степень) Добавлено через 1 минуту Добавлено через 4 минуты
1
|
||||
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
||
| 23.11.2011, 18:44 | ||
|
0
|
||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
||
| 23.11.2011, 18:57 | ||
|
Evg, слов нет. Ты же меня знаешь.
++++++++++++++++++++++++++++++++++++++++ +++++++ Ладно, а теперь займёмся вплотную тык скыть работой над ошибками. Так что если учитывать ввиду эту разницу, необходим промежуточный буфер. Ну и как следствие, трудности с переводом в двоичную систему. Ибо к буферу ту же itoa просто так не применишь, даже если привести указатель на него к int*. А всё опять же из-за возможной разницы в размерах типов. Добавлено через 1 минуту Не по теме: кто научит меня редактировать код, тот мой друг
0
|
||
| 23.11.2011, 18:57 | |
|
Представление числа в двоичной системе счисления Обьяснить представление числа в двоичной системе Описать функцию DecToBin(N), возвращающую представление числа в двоичной системе счисления
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
|
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи.
. . .
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|