<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=2731&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-04-02T20:08:18+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=2731&amp;mode</id>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2013-04-02T20:08:18+01:00</updated>
<published>2013-04-02T20:08:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32843#p32843</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32843#p32843"/>
<title type="html"><![CDATA[Re: Odp: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32843#p32843"><![CDATA[
No i o to mi chodziło, tylko tego jakoś przekazać logicznie nie umiałem. Tj. to miałem na myśli mówiąc o architekturze......aczkolwiek nadal nie zostało w pełni zobrazowane dlaczego jest zastosowane te maskowanie, a z chęcią bym się dowiedział.<p>Statystyki: Napisane przez Gość — 2 kwi 2013, o 20:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek_2]]></name></author>
<updated>2013-04-02T16:06:47+01:00</updated>
<published>2013-04-02T16:06:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32795#p32795</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32795#p32795"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32795#p32795"><![CDATA[
Ja te maski wywaliłem i wszędzie działa ok. Optymalizacja całkowicie zdjęta i defaulowa i no problem. Kurcze taka prosta sprawa a ile kombinacji. Ważne że działa ok, bo i nie ma prawa być inaczej. Dziękuję wszystkim za pomoc, ale jak coś komuś przyjdzie do głowy, to &quot;dawaj&quot;. Dla pokoleń może się przyda:).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1001">wojtek_2</a> — 2 kwi 2013, o 16:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xbary]]></name></author>
<updated>2013-04-02T15:36:04+01:00</updated>
<published>2013-04-02T15:36:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32792#p32792</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32792#p32792"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32792#p32792"><![CDATA[
a jednak 8 bitwa <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> jest ziel . Ciekawe ... to pozostaje jeszcze tylko powód taki że wynik w działaniu może przekroczyć 255 , a interesuje nas tylko te 8 bitów, czyli dajemy maskę żeby się pozbyć reszty ... <br />Proponuje zrobić doświadczenie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> skompilować kod bez maski skoro bez sensu i zobaczyć jak będzie wyglądać i dziać się po skompilowaniu pod każdą opcją optyminimalizacji. Gdzieś babol wyjdzie na pewno <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=447">xbary</a> — 2 kwi 2013, o 15:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2013-04-02T14:08:46+01:00</updated>
<published>2013-04-02T14:08:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32778#p32778</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32778#p32778"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32778#p32778"><![CDATA[
Nie mówię, że mam racje, sugerowałem się tym<br /><br />In writing portable C programs I've learned not to assume much of anything; even the statement the basic block size in 32 bit compiler is 4 bytes is an assumption that may not be true, since data sizes and address sizes are not required to be the same. The &quot;basic block size&quot; depends on a system's memory access architecture, and does not have to correspond to the data register size. Just an aside, as this doesn't affect your basic question about C struct sizes. – Stephen P Aug 10 '10 at 17:18<br /><br />I mogłem nie do końca zrozumieć sens wypowiedzi.<br /><br />Czyli reprezentacja w 32bitowym systemie char to owszem 8bitów, ale może być zapisywana jako 32bitowa blok z przysłoniętymi 24bitami......tak to zrozumiałem. <br />Pewnie wszystko zależy od użytej architektury.<p>Statystyki: Napisane przez Gość — 2 kwi 2013, o 14:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2013-04-02T13:39:05+01:00</updated>
<published>2013-04-02T13:39:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32772#p32772</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32772#p32772"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32772#p32772"><![CDATA[
Nie wiem czy dobrze, ale wydaje mi się, że po pierwsze jak wyżej czyli dla porządku w kodzie, bo Pratha opisuje &quot;uniwersalnie&quot; i nie pod 8bitowce, a w PCtach i tak zmienna 8bitowa jest trzymana bodajże w 32bitach.<br /><br />Ogólnie problem może być z rzutowaniem typów zależnie od architektury, więc jak wyżej, dla porządku w kodzie i zmiennych zastosował to maskowanie. <br />Ale głowy sobie obciąć nie dam, tak mi się tylko coś kołacze w mojej pustej głowie.<p>Statystyki: Napisane przez Gość — 2 kwi 2013, o 13:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek_2]]></name></author>
<updated>2013-04-02T13:30:21+01:00</updated>
<published>2013-04-02T13:30:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32771#p32771</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32771#p32771"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32771#p32771"><![CDATA[
Wiesz co, mogę ale to kod ogólnie dostępny na odczyt DHT22. Przykład z ze zmienną ziel to przykład z książki Praty Język C.<br />Przykład :<br />[syntax=c]<br />uint8t jeden;<br />uint32t dwa;<br />   jeden = (dwa&gt;&gt;8) &amp; 0xFF;<br /><br />[/syntax]<br /><br />Tu masz przykład 100% odzwierciedlający przykład. Chce wyciągnąć drugi bajt zmiennej long no to przesuwam bity w prawo 8 razy i mam je w najmłodszym bajcie long. Teraz jak by (nie wiem jak to się mówi.. niejawne przekształcenie z long na uint8t) dokonuje przepisania tego bajtu do zmiennej jeden (jeden bajt) coś jak by rzutowanie najmłodszej częsci bajtu zmiennej long do zmiennej 8bit. Może to przez to daje się maskę, ale po co skoro jeden i tak więcej nie przejmie z long...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1001">wojtek_2</a> — 2 kwi 2013, o 13:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2013-04-02T13:11:27+01:00</updated>
<published>2013-04-02T13:11:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32770#p32770</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32770#p32770"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32770#p32770"><![CDATA[
Nie możesz wrzucić całego kodu? bo tak to nic innego jak wróżenie z fusów.<p>Statystyki: Napisane przez Gość — 2 kwi 2013, o 13:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek_2]]></name></author>
<updated>2013-04-02T13:10:07+01:00</updated>
<published>2013-04-02T13:10:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32769#p32769</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32769#p32769"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32769#p32769"><![CDATA[
No ale ziel to char (8bit) a kolor to long. Co innego gdyby ziel była long. Ale np.<br />[syntax=c]f( checkSum == ( (csPart1 + csPart2 + csPart3 + csPart4) &amp; 0xFF ) )[/syntax]. Tu są same uint8t a mimo to maskę dał piszący program. Coś mi tu śmierdzi:). Ok. Wiem tyle że to &quot;krawat&quot; i to będzie ten trop.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1001">wojtek_2</a> — 2 kwi 2013, o 13:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xbary]]></name></author>
<updated>2013-04-02T12:48:43+01:00</updated>
<published>2013-04-02T12:48:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32765#p32765</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32765#p32765"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32765#p32765"><![CDATA[
<div class="quotetitle">wojtek_2 napisał(a):</div><div class="quotecontent"><br />zmienna ziel przechowuje 8 bitów zmiennej kolor która jest bodajże typu long..<br /></div><br /><br />I właśnie po to ktoś zrobił 0xff maskę <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> bo niema 8 bitowej zmiennej long...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=447">xbary</a> — 2 kwi 2013, o 12:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek_2]]></name></author>
<updated>2013-04-02T08:22:56+01:00</updated>
<published>2013-04-02T08:22:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32728#p32728</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32728#p32728"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32728#p32728"><![CDATA[
zmienna ziel przechowuje 8 bitów zmiennej kolor która jest bodajże typu long. Ale jaka by ona nie była to maska &amp; 0xff jest bez sensu na zmiennej 8bit. Ale tak jak piszesz.. to może być taki asekuracyjny myk na niektóre kompilatory i platformy. Może warto to stosować dla zachowania &quot;krawatowej&quot; formy programu <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1001">wojtek_2</a> — 2 kwi 2013, o 08:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xbary]]></name></author>
<updated>2013-04-02T07:59:47+01:00</updated>
<published>2013-04-02T07:59:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32727#p32727</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32727#p32727"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32727#p32727"><![CDATA[
Takie maski nieraz trzeba zastosować ponieważ kompilator czasem w niektórych sytuacjach operuje na rejestrach o szerokości 16 bitowej... i żeby nie było błędnych obliczeń na zmiennej 8 bitowej dobrze dać maskę. No i też kwestia tego jaka to zmienna ta ziel ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=447">xbary</a> — 2 kwi 2013, o 07:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek_2]]></name></author>
<updated>2013-04-01T22:50:30+01:00</updated>
<published>2013-04-01T22:50:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32715#p32715</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32715#p32715"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32715#p32715"><![CDATA[
No i bardzo dobrze. Tam jest parę takich miejsc gdzie są te maski stosowane bez sensu. Rozumie maski inne niż 0xFF w połączeniu z &amp; ale 0xFF na liczbie 8bit.....<br />Dzięki za odpowiedź.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1001">wojtek_2</a> — 1 kwi 2013, o 22:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Ledes]]></name></author>
<updated>2013-04-01T22:29:36+01:00</updated>
<published>2013-04-01T22:29:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32712#p32712</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32712#p32712"/>
<title type="html"><![CDATA[Re: po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32712#p32712"><![CDATA[
[syntax=c]byte &amp; 0xFF[/syntax] nic nie zmienia z bajtem, pewnie to było do tego celu, że maska była zmieniana w różnych miejscach.<br /><br />Np. wyzerowanie starszych czterech bitów:<br />[syntax=c]<br />MASK = 0x0F;<br /><br />byte &amp;= MASK;[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=355">Ledes</a> — 1 kwi 2013, o 22:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek_2]]></name></author>
<updated>2013-04-01T22:12:33+01:00</updated>
<published>2013-04-01T22:12:33+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32707#p32707</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32707#p32707"/>
<title type="html"><![CDATA[po co maska 0xff???!]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2731&amp;p=32707#p32707"><![CDATA[
Kochani... już parę razy spotkałem się z zapisem [syntax=c]if( checkSum == ( (csPart1 + csPart2 + csPart3 + csPart4) &amp; 0xFF ) )[/syntax] lub w książce Praty (wyrwane z kontekstu programu )[syntax=c]ziel = (kolor &gt;&gt; 8) &amp; MASKA[/syntax] gdzie MASKA to 0xFF, ziel to char . Po co w takim wyrażeniu maska 0xFF. Prata napisał że do przypisania zmiennej ziel wyniku przesunięcia bitów. Ale po co 0xff jak mamy uinta 8 bit??. Wywaliłem te maski i wszystko mi działa prawidłowo ale wolę wiedzieć czy nie  narobiłem jakiegoś bigosu. Stosuje to w taki sposób : [syntax=c]  csPart1 = currentHumidity &gt;&gt; 8; csPart3 = currentTemperature &gt;&gt; 8; csPart1+= csPart3;[/syntax] i w zmiennej mam prawidłową sumę kontrolną mimo braku maski.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1001">wojtek_2</a> — 1 kwi 2013, o 22:12</p><hr />
]]></content>
</entry>
</feed>