Свързани въпроси 'ieee-754'

Еквивалентност между два подхода към простата точност на IEEE 754
От известно време изучавам IEEE 754 и има нещо, което не успявам да разбера. Според моите бележки, в простата точност на IEEE имате 1 бит за знака, 8 за експонента и 23 за мантиса, което прави общо 32 бита. Експонентата може да се опише по...
26 изгледи
schedule 22.09.2022

Как се изпълнява fma().
Според документацията има функция fma() в math.h . Това е много хубаво и знам как работи FMA и за какво да го използвам. Но не съм много сигурен как това се прилага на практика? Интересувам се най-вече от архитектурите x86 и x86_64 . Има...
1894 изгледи

IEEE 754: sqrtf() с fesetround(): различни резултати между компилаторите: 0x42440a72 срещу 0x42440a73
#include <stdio.h> #include <stdint.h> #include <fenv.h> #include <math.h> int main() { typedef union { uint32_t u; float f; } ufloat; ufloat val; float arg = 2401.999999; int r; r =...
92 изгледи
schedule 30.09.2022

дефинирайте двойната константа като шестнадесетична?
Бих искал да имам най-близкото число под 1,0 като плаваща запетая. Като прочетох статията в wikipedia за IEEE-754 успях да разбера че двоичното представяне за 1.0 е 3FF0000000000000 , така че най-близката двойна стойност всъщност е...
3449 изгледи

Защо е 8099.99975f != 8100f
Редактиране: Знам, че аритметиката с плаваща запетая не е точна. И аритметиката дори не е мой проблем. Добавката дава резултата, който очаквах. 8099.99975f не го прави. Така че имам тази малка програма: public class Test { public...
128 изгледи

Когато умножавам float с помощта на multu, трябва ли да игнорирам резултата в регистъра LO?
В нашия проект ние вземаме две плаващи числа от потребителя, съхраняваме ги в целочислени регистри и ги третираме като IEEE 754 плаващи числа с единична точност, като манипулираме битовете чрез маскиране. И така, след като умножа 23-те бита от...
482 изгледи
schedule 17.03.2024