Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > by-pkgid > 9f39b42a4a9bb5f46373ffcca30c81df > files > 19

libzvbi0-devel-0.2.3-1mdk.ppc.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>BCD arithmetic for Teletext page numbers</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.2.18 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; <a class="qindex" href="examples.html">Examples</a> &nbsp; </center>
<hr><h1>BCD arithmetic for Teletext page numbers<br>
<small>
[<a class="el" href="group__Service.html">Data Service Decoder</a>]</small>
</h1><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
<tr><td nowrap align=right valign=top>static_inline unsigned int&nbsp;</td><td valign=bottom><a class="el" href="group__BCD.html#a0">vbi_dec2bcd</a> (unsigned int dec)</td></tr>
<tr><td nowrap align=right valign=top>static_inline unsigned int&nbsp;</td><td valign=bottom><a class="el" href="group__BCD.html#a1">vbi_bcd2dec</a> (unsigned int bcd)</td></tr>
<tr><td nowrap align=right valign=top>static_inline unsigned int&nbsp;</td><td valign=bottom><a class="el" href="group__BCD.html#a2">vbi_add_bcd</a> (unsigned int a, unsigned int b)</td></tr>
<tr><td nowrap align=right valign=top>static_inline vbi_bool&nbsp;</td><td valign=bottom><a class="el" href="group__BCD.html#a3">vbi_is_bcd</a> (unsigned int bcd)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Teletext page numbers are expressed as binary coded decimal numbers in range 0x100 to 0x8FF. The bcd format encodes one decimal digit in every hex nibble (four bits) of the number. Page numbers containing digits 0xA to 0xF are reserved for various system purposes and not intended for display. <hr><h2>Function Documentation</h2>
<a name="a0" doxytag="bcd.h::vbi_dec2bcd"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> static_inline unsigned int vbi_dec2bcd </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">unsigned int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>dec</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>dec</em>&nbsp;</td><td>
Decimal number.</td></tr>
</table>
</dl>Converts a decimal number between 0 ... 999 to a bcd number in range 0x000 ... 0x999. Extra digits in the input will be discarded.
<p>
<dl compact><dt><b>Returns: </b></dt><dd>
 BCD number. </dl>    </td>
  </tr>
</table>
<a name="a1" doxytag="bcd.h::vbi_bcd2dec"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> static_inline unsigned int vbi_bcd2dec </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">unsigned int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>bcd</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>bcd</em>&nbsp;</td><td>
BCD number.</td></tr>
</table>
</dl>Converts a bcd number between 0x000 ... 0xFFF to a decimal number in range 0 ... 999. Extra digits in the input will be discarded.
<p>
<dl compact><dt><b>Returns: </b></dt><dd>
 Decimal number. The result is undefined when the bcd number contains hex digits 0xA ... 0xF. </dl>    </td>
  </tr>
</table>
<a name="a2" doxytag="bcd.h::vbi_add_bcd"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> static_inline unsigned int vbi_add_bcd </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">unsigned int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>a</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>unsigned int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>b</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>a</em>&nbsp;</td><td>
BCD number. </td></tr>
<tr><td valign=top><em>b</em>&nbsp;</td><td>
BCD number.</td></tr>
</table>
</dl>Adds two bcd numbers, returning a bcd sum. The result will be in range 0x0000&nbsp;0000 ... 0x9999&nbsp;9999, discarding carry and extra digits in the inputs. To subtract you can add the complement, e. g. -0x1 = +0x9999&nbsp;9999.
<p>
<dl compact><dt><b>Returns: </b></dt><dd>
 BCD number. The result is undefined when the bcd number contains hex digits 0xA ... 0xF. </dl>    </td>
  </tr>
</table>
<a name="a3" doxytag="bcd.h::vbi_is_bcd"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> static_inline vbi_bool vbi_is_bcd </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">unsigned int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>bcd</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>bcd</em>&nbsp;</td><td>
BCD number.</td></tr>
</table>
</dl>Tests if <em>bcd</em> forms a valid BCD number.
<p>
<dl compact><dt><b>Returns: </b></dt><dd>
 <code>FALSE</code> if <em>bcd</em> contains hex digits 0xA ... 0xF. </dl>    </td>
  </tr>
</table>
<hr><address style="align: right;"><small>Generated on Thu Jan 2 16:03:41 2003 for ZVBI Library by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 
width=110 height=53></a>1.2.18 </small></address>
</body>
</html>