Jump to content

Posit numbers/decoding: Difference between revisions

m
→‎{{header|Phix}}: improved examples
m (→‎{{header|Phix}}: improved examples)
Line 97:
<span style="color: #0000FF;">{</span><span style="color: #000000;">16</span><span style="color: #0000FF;">,</span><span style="color: #000000;">2</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b0000000000000001</span><span style="color: #0000FF;">},</span>
<span style="color: #000080;font-style:italic;">-- {16,0,0b0111111111111111}, -- nope</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">16</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b0011111111111111</span><span style="color: #0000FF;">},</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">16</span><span style="color: #0000FF;">,</span><span style="color: #000000;">6</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b0111111111111110</span><span style="color: #0000FF;">},</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">8</span><span style="color: #0000FF;">,</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b01000000</span><span style="color: #0000FF;">},</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">8</span><span style="color: #0000FF;">,</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b11000000</span><span style="color: #0000FF;">},</span>
Line 103 ⟶ 105:
<span style="color: #0000FF;">{</span><span style="color: #000000;">8</span><span style="color: #0000FF;">,</span><span style="color: #000000;">2</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b00000001</span><span style="color: #0000FF;">},</span>
<span style="color: #000080;font-style:italic;">-- {8,2,0b01111111}, -- nope</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">328</span><span style="color: #0000FF;">,</span><span style="color: #000000;">27</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b000000000000000000000000000000010b01111110</span><span style="color: #0000FF;">}},</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">8</span><span style="color: #0000FF;">,</span><span style="color: #000000;">2</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b01111111</span><span style="color: #0000FF;">},</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">32</span><span style="color: #0000FF;">,</span><span style="color: #000000;">2</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b00000000000000000000000000000001</span><span style="color: #0000FF;">},</span>
<span style="color: #000080;font-style:italic;">-- {32,2,0b01111111111111111111111111111111<nowiki>}}</nowiki> -- nope</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">32</span><span style="color: #0000FF;">,</span><span style="color: #000000;">5</span><span style="color: #0000FF;">,</span><span style="color: #000000;">0b01111111111111111111111111111110</span><span style="color: #0000FF;">}}</span>
<span style="color: #008080;">for</span> <span style="color: #000000;">t</span> <span style="color: #008080;">in</span> <span style="color: #000000;">tests</span> <span style="color: #008080;">do</span>
<span style="color: #7060A8;">printf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"%s = %v\n"</span><span style="color: #0000FF;">,</span><span style="color: #7060A8;">call_func</span><span style="color: #0000FF;">(</span><span style="color: #000000;">posit_decode</span><span style="color: #0000FF;">,</span><span style="color: #000000;">t</span><span style="color: #0000FF;">))</span>
Line 110 ⟶ 115:
<!--</syntaxhighlight>-->
{{out}}
Be warned I could not get the largest positive values to match the Wikipedia page... and instead I've put in some bigger values, which are either wrong or prove that table on the wp page is wrong.
<pre>
0000110111011101 = 3.553926944e-6
Line 118 ⟶ 123:
1110110010101000 = -12.65625
0000000000000001 = 1.38777878e-17
0011111111111111 = 0.9999389648
0111111111111110 = 2.863890392e+250
01000000 = 1
11000000 = -1
Line 123 ⟶ 130:
00100000 = 0.25
00000001 = 5.960464478e-8
01111110 = 4.562440618e+192
01111111 = 0.0009689331
00000000000000000000000000000001 = 7.523163846e-37
01111111111111111111111111111110 = 2.269007734e+279
</pre>
 
7,813

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.