<html>
  <head>
    <meta content="text/html; charset=ISO-8859-2"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <font face="Helvetica, Arial, sans-serif">PORTCbits.RC4 nabyva
      hodnot 0 nebo 1.<br>
      (kopieBytu &amp; 0b10000000) nabyva hodnot 0 nebo 0x80.<br>
      <br>
      Prekladac udelal presne to, co se po nem chce :-)<br>
      <br>
      Bez prerovnani bitu by to slo napsat takto:<br>
      <br>
          if (((kopie &amp; 0x80) &amp;&amp; RC4) || (!(kopie &amp;
      0x80) &amp;&amp; !RC4))<br>
      <br>
      Pokud by bity byly na stejnem miste (RC4), pak by slo napsat<br>
      <br>
          if ((kopie ^ PORTC) &amp; 0x10)<br>
      <br>
      <br>
      <br>
      Hynek<br>
      <br>
      <br>
      <br>
    </font>
    <div class="moz-cite-prefix">Dne 4.4.2013 13:39, Miroslav Draxal
      napsal(a):<br>
    </div>
    <blockquote cite="mid:002701ce3129$182dadb0$48890910$@cz"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-2">
      <meta name="Generator" content="Microsoft Word 12 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@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;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-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;}
span.StylE-mailovZprvy17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@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]-->
      <div class="WordSection1">
        <p class="MsoNormal">Dobrý den,<o:p></o:p></p>
        <p class="MsoNormal"> Se v tom nějak plácám. Prosím znalce, kde
          dělám chybu<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">char  kopieBytu;<o:p></o:p></p>
        <p class="MsoNormal">#define SPI_DATA_IN     PORTCbits.RC4<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">if ((kopieBytu &amp; 0b10000000) !=
          SPI_DATA_IN) //SPIverifi<o:p></o:p></p>
        <p class="MsoNormal">{ chyba verifikace }<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">přeloží jako <o:p></o:p></p>
        <p class="MsoNormal">Rozbor pokud má verifikovat  (na vstupu RC4
          je HI, v kopieBytu = 0b10000000) mi vyhodnotí jako chybu
          verifikace, což je špatně.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">!                                          
              if ((kopieBytu &amp; 0b10000000) != SPI_DATA_IN)
          //SPIverifi<o:p></o:p></p>
        <p class="MsoNormal">0x1F48: SWAPF PORTC, W,
          ACCESS                                        (1001000 <span
            style="font-family:Wingdings">&egrave;</span>W=00001001)<o:p></o:p></p>
        <p class="MsoNormal">0x1F4A: ANDLW
          0x1                                                                 
          (W=00000001)<o:p></o:p></p>
        <p class="MsoNormal">0x1F4C: MOVWF divisor, ACCESS           
          (0x5D)                    (W do 0x5D)<o:p></o:p></p>
        <p class="MsoNormal">0x1F4E: MOVF quotient, W, BANKED      
          (0x82)                 (kopieBytu do W=10000000)<o:p></o:p></p>
        <p class="MsoNormal">0x1F50: ANDLW
          0x80                                                               
          (W=10000000)<o:p></o:p></p>
        <p class="MsoNormal">0x1F52: XORWF divisor, W, ACCESS         
          (0x5D)                  (10000000 XOR 00000001 = 10000001)
          ????<o:p></o:p></p>
        <p class="MsoNormal">0x1F54: BTFSS STATUS, 2, ACCESS<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Se mi nezdá řádek 0x1F52, ten přeci o
          podmínce nic neříká. <o:p></o:p></p>
        <p class="MsoNormal">Díky za reakce. Míra<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
      </div>
      <br>
    </blockquote>
    <br>
  </body>
</html>