Numworks Epsilon  1.4.1
Graphing Calculator Operating System
ieee754.c
Go to the documentation of this file.
1 #include <quiz.h>
2 #include <assert.h>
3 #include <math.h>
4 #include <private/ieee754.h>
5 
6 QUIZ_CASE(liba_ieee754) {
7  assert(ieee754man32(123.456f) == 7793017);
8  assert(ieee754exp32(123.456f) == 133);
9  assert(ieee754man32(555.555f) == 713605);
10  assert(ieee754exp32(555.555f) == 136);
11  assert(ieee754man32(0.007f) == 6643778);
12  assert(ieee754exp32(0.007f) == 119);
13  assert(ieee754man64(123.456) == 0b1110110111010010111100011010100111111011111001110111);
14  assert(ieee754exp64(123.456) == 0b10000000101);
15  assert(ieee754man64(555.555) == 0b0001010111000111000010100011110101110000101000111101);
16  assert(ieee754exp64(555.555) == 0b10000001000);
17  assert(ieee754man64(0.007) == 0b1100101011000000100000110001001001101110100101111001);
18  assert(ieee754exp64(0.007) == 0b01111110111);
20  assert(isinf((double)INFINITY));
21 }
#define assert(e)
Definition: assert.h:9
#define isinf(x)
Definition: math.h:44
uint32_t ieee754man32(float x)
Definition: ieee754.c:4
QUIZ_CASE(liba_ieee754)
Definition: ieee754.c:6
uint64_t ieee754man64(double x)
Definition: ieee754.c:14
uint8_t ieee754exp32(float x)
Definition: ieee754.c:9
#define INFINITY
Definition: math.h:29
uint16_t ieee754exp64(double x)
Definition: ieee754.c:19