<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=iso-8859-2"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><title>Re: pole bitového pole v C</title><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
span.StylE-mailovZprvy18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=CS link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Ano, a porodníma bolestma jsem vyplodil něco hodně podobného, jenom  jsem všude použil char, protože mam jenom 256 RAM. Na netu jsem kdysi zahlídnul něco, co používalo nějakou fintu. Ale za boha si nevzpomenu kde to bylo. Byli to dva řádky. Míra <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbsp;</o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> hw-list-bounces@list.hw.cz [mailto:hw-list-bounces@list.hw.cz] <b>On Behalf Of </b>Jan Waclawek<br><b>Sent:</b> Saturday, January 12, 2013 3:45 PM<br><b>To:</b> HW-news<br><b>Subject:</b> Re: pole bitového pole v C<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p>&nbsp;</o:p></p><p><span style='font-size:10.0pt'>&gt; je to vlastně pole char[3], chtěl bych napsat něco univerzálního, kde bych<br>&gt; zadal ukazatel na počátek pole, jaký bit nastavit např.14.<br>&gt;<br>&gt; Nějak mě nenapadá žádný elegantní způsob. Ale zase, někde jsem to někde<br>&gt; viděl v asm pro PIC. Míra<br><br>#include &lt;stdint.h&gt;<br>uint8_t bits[3]<br><br>void SetBit(uint8_t * bitfield, uint8_t idx, _Bool value) {<br>uint8_t mask;<br>&nbsp; mask = 1 &lt;&lt; (idx % 8);<br>&nbsp; if (value) {<br>&nbsp;&nbsp;&nbsp; bitfield[idx / 8] |= mask;<br>&nbsp; } else {<br>&nbsp;&nbsp;&nbsp; bitfield[idx / 8] &amp;= (~mask) &amp; 0xFF;<br>&nbsp; }<br>}<br><br>_Bool GetBit(uint8_t * bitfield, uint8_t idx) {<br>&nbsp; return (_Bool)(bitfield[idx / 8] &amp; (1 &lt;&lt; (idx % 8))<br>}<br><br>wek<br>wek<br>_______________________________________________<br>HW-list mailing list&nbsp; -&nbsp; sponsored by <a href="http://www.HW.cz">www.HW.cz</a><br><a href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br><a href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a></span> <o:p></o:p></p><p class=MsoNormal><br><br>__________ Informace od ESET NOD32 Antivirus, verze databaze 7886 (20130112) __________<br><br>Tuto zpravu proveril ESET NOD32 Antivirus.<br><br><a href="http://www.eset.cz">http://www.eset.cz</a><o:p></o:p></p></div> <BR>
<BR>
__________ Informace od ESET NOD32 Antivirus, verze databaze 7886 (20130112) __________<BR>
<BR>
Tuto zpravu proveril ESET NOD32 Antivirus.<BR>
<BR>
<A HREF="http://www.eset.cz">http://www.eset.cz</A><BR>


 </body></html>