<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mcselec.com/bavr/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=CHECKFLOAT%2Fde</id>
		<title>CHECKFLOAT/de - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=CHECKFLOAT%2Fde"/>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=CHECKFLOAT/de&amp;action=history"/>
		<updated>2026-04-05T18:32:53Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.18.6</generator>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=CHECKFLOAT/de&amp;diff=2103&amp;oldid=prev</id>
		<title>Admin: 1 revision</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=CHECKFLOAT/de&amp;diff=2103&amp;oldid=prev"/>
				<updated>2013-02-15T19:13:05Z</updated>
		
		<summary type="html">&lt;p&gt;1 revision&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 19:13, 15 February 2013&lt;/td&gt;
		&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=CHECKFLOAT/de&amp;diff=2102&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;= &lt;span class=&quot;f_Header&quot;&gt;Action&lt;/span&gt; =  This function validates the value of a floating point variable.  &lt;span style=&quot;font-family: Arial;&quot;&gt;&amp;nbsp;&lt;/span&gt;  &lt;span style=&quot;font-f...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=CHECKFLOAT/de&amp;diff=2102&amp;oldid=prev"/>
				<updated>2013-02-07T17:57:03Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =  This function validates the value of a floating point variable.  &amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;  &amp;lt;span style=&amp;quot;font-f...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== (**COPIED FROM ENGLISH PAGE**) === &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
This function validates the value of a floating point variable.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Syntax&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
targ =&amp;lt;span style=&amp;quot;font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;&amp;amp;nbsp;CHECKFLOAT(&amp;lt;/span&amp;gt;var [,option]&amp;lt;span style=&amp;quot;font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Remarks&amp;lt;/span&amp;gt; =&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 4px;&amp;quot;&amp;gt;&lt;br /&gt;
{| width=&amp;quot;549&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 2px solid rgb(0, 0, 0); border-spacing: 0px; border-collapse: collapse;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;15%&amp;quot; style=&amp;quot;width: 79px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
targ&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 461px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A numeric variable that will be assigned with the result of the validation.&lt;br /&gt;
&lt;br /&gt;
The following bits can be set:&lt;br /&gt;
&lt;br /&gt;
cBitInfinity = 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;&amp;amp;nbsp;cmBitInfinity = 1 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;;(2 ^ cBitInfinity)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cBitZero = 1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;&amp;amp;nbsp;cmBitZero = 2 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;;(2 ^ cBitZero)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cBitNAN = 2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;&amp;amp;nbsp;cmBitNAN = 4 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;;(2 ^ cBitNAN)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cBitSign = 7&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;&amp;amp;nbsp;cmBitSign = 128 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;;(2 ^ cBitSign)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
The byte values are shown in italic.&lt;br /&gt;
&lt;br /&gt;
The bit constants are defined in the single and double libraries.&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;15%&amp;quot; style=&amp;quot;width: 79px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
var&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 461px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A floating point variable such as a single or double to validate.&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;15%&amp;quot; style=&amp;quot;width: 79px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
option&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 461px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
This is an optional numeric constant that servers as a mask.&lt;br /&gt;
&lt;br /&gt;
This allows to test for makes it possible to test for a single error.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A floating point value may contain an illegal value as the result of a calculation. These illegal values are NAN (not a number) and INFINITY.&lt;br /&gt;
&lt;br /&gt;
The two other tests which are performed are a test for zero, and a sign test.&lt;br /&gt;
&lt;br /&gt;
If the result bit 0 is '1' then the number is infinity.&lt;br /&gt;
&lt;br /&gt;
If the result bit 1 is '1' then the number is zero.&lt;br /&gt;
&lt;br /&gt;
If the result bit 2 is '1' then the number if NAN.&lt;br /&gt;
&lt;br /&gt;
If the result bit 7 is '1' then the number is negative.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
If you want to test only for NAN and INFINITY you can add the bits and pass this as the optional numeric mask. For NAN and INFINITY this would be 1+4=5&lt;br /&gt;
&lt;br /&gt;
The resulting value will be AND-ed and if any of the two bits is set, the result will be non-zero, indicating an error. If both values are 0, the result will be zero.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;See also&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;NONE&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Example&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;source lang=&amp;quot;bascomavr&amp;quot;&amp;gt;&lt;br /&gt;
$regfile = &amp;quot;m2561def.dat&amp;quot;&lt;br /&gt;
$crystal = 8000000&lt;br /&gt;
$hwstack = 64&lt;br /&gt;
$swstack = 64&lt;br /&gt;
$framesize = 64&lt;br /&gt;
$baud = 19200&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
$lib &amp;quot;single.lbx&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
Dim S1 As Single , S2 As Single , S3 As Single&lt;br /&gt;
dim d1 as Double , d2 as Double , d3 as Double&lt;br /&gt;
dim bCheck as Byte&lt;br /&gt;
dim bs(4) as Byte at s3 overlay&lt;br /&gt;
dim bd(8) as Byte at d3 overlay&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
S1 = 0 : Bcheck = Checkfloat(s1) : Print Bin(bcheck)&lt;br /&gt;
 &lt;br /&gt;
S1 = 0 : Bcheck = Checkfloat(s1 , 2) : Print Bin(bcheck)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
d1 = 1: d2 = 0 : d3 = d1 / d2 ' 1/0 should result in infinty&lt;br /&gt;
Bcheck = Checkfloat(d3) : Print Bin(bcheck)&lt;br /&gt;
Bcheck = Checkfloat(d3 , 5) : Print Bcheck ' test for infinity and nan&lt;br /&gt;
 &lt;br /&gt;
d1 = -1&lt;br /&gt;
d3 = sqr(d1) ' should produce NAN&lt;br /&gt;
Bcheck = Checkfloat(d3) : Print Bin(bcheck)&lt;br /&gt;
 &lt;br /&gt;
' single routines must be checked for returning IEEE-Rulues according values&lt;br /&gt;
s1 = 1: s2 = 0 : s3 = s1 / s2 ' 1/0 should result in infinty&lt;br /&gt;
Bcheck = Checkfloat(s3) : Print Bin(bcheck)&lt;br /&gt;
 &lt;br /&gt;
s1 = -1&lt;br /&gt;
s3 = sqr(s1) ' should produce NAN&lt;br /&gt;
Bcheck = Checkfloat(s3) : Print Bin(bcheck)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' now check with hard-coded values for singles&lt;br /&gt;
bs(1) = &amp;amp;HFF: bs(2) = &amp;amp;HFF: bs(3) = &amp;amp;HFF: bs(4) = &amp;amp;H7F ' NAN&lt;br /&gt;
Bcheck = Checkfloat(s3) : Print Bin(bcheck)&lt;br /&gt;
 &lt;br /&gt;
bs(1) = &amp;amp;H00: bs(2) = &amp;amp;H00: bs(3) = &amp;amp;H80: bs(4) = &amp;amp;H7F ' infinity&lt;br /&gt;
Bcheck = Checkfloat(s3) : Print Bin(bcheck)&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;br/&amp;gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
[[Category:BASCOM Language Reference/de]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>