Template:Oom2: Difference between revisions

From PS4 Developer wiki
Jump to navigation Jump to search
(Created page with "<includeonly>{{#ifexpr:({{{1}}})<0|number <0|{{#ifexpr:({{{1}}})=0|-1E308|{{#expr:0+((ln({{{1}}})/ln2)round0){{#ifexpr:({{#ifexpr:(({{{1}}})>2^52)and(((ln({{{1}}})/ln2)round0)...")
 
No edit summary
 
Line 1: Line 1:
<includeonly>{{#ifexpr:({{{1}}})<0|number <0|{{#ifexpr:({{{1}}})=0|-1E308|{{#expr:0+((ln({{{1}}})/ln2)round0){{#ifexpr:({{#ifexpr:(({{{1}}})>2^52)and(((ln({{{1}}})/ln2)round0)<63)|trunc(2^((ln({{{1}}})/ln2)round0))|2^((ln({{{1}}})/ln2)round0)}}>({{{1}}}))or((({{{1}}})=2^63)and(({{{1}}})=trunc({{{1}}})))|-1}}}}}}}}</includeonly><noinclude>
<includeonly>{{#ifexpr:({{{1}}})<0|number <0|{{#ifexpr:({{{1}}})=0|-1E308|{{#expr:0+((ln({{{1}}})/ln2)round0){{#ifexpr:({{#ifexpr:(({{{1}}})>2^52)and(((ln({{{1}}})/ln2)round0)<63)|trunc(2^((ln({{{1}}})/ln2)round0))|2^((ln({{{1}}})/ln2)round0)}}>({{{1}}}))or((({{{1}}})=2^63)and(({{{1}}})=trunc({{{1}}})))|-1}}}}}}}}</includeonly><noinclude>[[Category:Templates]]</noinclude>
This template determines the log to the base 2, rounded down to an integer (binary [[w:order of magnitude|'''O'''rder '''O'''f '''M'''agnitude]]), of a number of type float. In other words, it determines the log to the base 2 of the number rounded down to a power of 2.
 
The internally representable number should not be confused with the given decimal number:
*{{xpsoc|oom2|3.9999999999999999}}
Thus the template takes the input as representing an internally representable number, just like #expr does, as opposed to applying string operations to find the characters in the decimal notation and then find the required quantity for the exact decimal number.
 
*{{xpsoc|oom2|1e2}}
*{{xpsoc|oom2|1e3}}
*{{xpsoc|oom2|1e4}}
*{{xpsoc|oom2|1e5}}
*{{xpsoc|oom2|1e6}}
*{{xpsoc|oom2|1e7}}
*{{xpsoc|oom2|1e8}}
*{{xpsoc|oom2|1e9}}
*{{xpsoc|oom2|1e10}}
*{{xpsoc|oom2|1e11}}
*{{xpsoc|oom2|1e12}}
*{{xpsoc|oom2|1e13}}
*{{xpsoc|oom2|1e14}}
*{{xpsoc|oom2|1e15}}
*{{xpsoc|oom2|1e16}}
*{{xpsoc|oom2|1e17}}
*{{xpsoc|oom2|1e18}}
*{{xpsoc|oom2|1e19}}
*{{xpsoc|oom2|1e20}}
*{{xpsoc|oom2|trunc2^trunc53-trunc1}}
*{{xpsoc|oom2|trunc2^trunc53}}
*{{xpsoc|oom2|trunc2^trunc54-trunc1}}
*{{xpsoc|oom2|trunc2^trunc54}}
*{{xpsoc|oom2|trunc2^trunc55-trunc1}}
*{{xpsoc|oom2|trunc2^trunc55}}
*{{xpsoc|oom2|trunc2^trunc56-trunc1}}
*{{xpsoc|oom2|trunc2^trunc56}}
*{{xpsoc|oom2|trunc2^trunc57-trunc1}}
*{{xpsoc|oom2|trunc2^trunc57}}
*{{xpsoc|oom2|trunc2^trunc58-trunc1}}
*{{xpsoc|oom2|trunc2^trunc58}}
*{{xpsoc|oom2|trunc2^trunc59-trunc1}}
*{{xpsoc|oom2|trunc2^trunc59}}
*{{xpsoc|oom2|trunc2^trunc60-trunc1}}
*{{xpsoc|oom2|trunc2^trunc60}}
*{{xpsoc|oom2|trunc2^trunc61-trunc1}}
*{{xpsoc|oom2|trunc2^trunc61}}
*{{xpsoc|oom2|trunc2^trunc62-trunc1}}
*{{xpsoc|oom2|trunc2^trunc62}}
*{{xpsoc|oom2|trunc2^trunc62-trunc1+trunc2^trunc62}}
*{{xpsoc|oom2|trunc2^trunc63}}
*{{xpsoc|oom2|2^-900-2^-953}}
*{{xpsoc|oom2|2^-900-2^-954}}
**{{xpsoc|#expr:(2^-900-2^-954)-2^-900}}
*{{xpsoc|oom2|2^1000-2^947}}
*{{xpsoc|oom2|2^1000-2^946}}
**{{xpsoc|#expr:(2^1000-2^946)-2^1000}}
*{{xpsoc|oom2|2^1000}}
*{{xpsoc|oom2|2^1001}}
*{{xpsoc|oom2|2^1002}}
*{{xpsoc|oom2|2^1003}}
*{{xpsoc|oom2|2^1004}}
*{{xpsoc|oom2|2^1005}}
*{{xpsoc|oom2|2^1006}}
*{{xpsoc|oom2|2^1007}}
*{{xpsoc|oom2|2^1008}}
*{{xpsoc|oom2|2^1009}}
*{{xpsoc|oom2|2^1010}}
*{{xpsoc|oom2|2^1011}}
*{{xpsoc|oom2|2^1012}}
*{{xpsoc|oom2|(2-2^-52)*2^1000}}
*{{xpsoc|oom2|(2-2^-52)*2^1001}}
*{{xpsoc|oom2|(2-2^-52)*2^1002}}
*{{xpsoc|oom2|(2-2^-52)*2^1003}}
*{{xpsoc|oom2|(2-2^-52)*2^1004}}
*{{xpsoc|oom2|(2-2^-52)*2^1005}}
*{{xpsoc|oom2|(2-2^-52)*2^1006}}
*{{xpsoc|oom2|(2-2^-52)*2^1007}}
*{{xpsoc|oom2|(2-2^-52)*2^1008}}
*{{xpsoc|oom2|(2-2^-52)*2^1009}}
*{{xpsoc|oom2|(2-2^-52)*2^1010}}
*{{xpsoc|oom2|(2-2^-52)*2^1011}}
*{{xpsoc|oom2|(2-2^-52)*2^1023}}
*{{xpsoc|oom2|(2-2^-52)*2^1023}}
*{{xpsoc|oom2|(2-2^-52)*2^1023}}
*{{xpsoc|oom2|2^1024}}
*{{xpsoc|oom2|2^-1074}}
*{{xpsoc|oom2|2^-1075}}
*{{xpsoc|oom2|0}}
 
*<code><nowiki>{{#expr:2^{{oom2|2^-1075}}}}</nowiki></code> → {{#expr:2^{{oom2|2^-1075}}}}
*<code><nowiki>{{#expr:2^{{oom2|0}}}}</nowiki></code> → {{#expr:2^{{oom2|0}}}}
 
*{{xpsoc|oom2|2^61}}
*{{xpsoc|oom2|trunc(2^62-512)+trunc511}}
*{{xpsoc|oom2|2^62}}
*{{xpsoc|oom2|1.5*2^62}}
*{{xpsoc|oom2|trunc(2^63-1024)+trunc1023}}
*{{xpsoc|oom2|1.5*2^63}}
 
[[Category:Templates]]</noinclude>

Latest revision as of 05:56, 3 June 2014