CRC25 - kuidas ? - Printerisõbralik versioon +- Elektroonikafoorum.com (https://elektroonikafoorum.com) +-- Foorum: Arutelud (https://elektroonikafoorum.com/forum-3.html) +--- Foorum: Programmeerimine (https://elektroonikafoorum.com/forum-5.html) +--- Teema: CRC25 - kuidas ? (/thread-592.html) |
RE: CRC25 - kuidas ? - felch - 04-02-2015 (04-02-2015, 09:08 PM)admin Kirjutas:Tänud, seda ma tean. Kirjutasin ka aga vast jäi abistajatel 2 silma vahele (tervelt 65mm ju! )(04-02-2015, 08:50 PM)A.R. Kirjutas: Aga kust tuli see 0x32 see on veel (eel)viimane probleem. Sain tuttava profielektrooniku abiga töötava C-keelse kalkulaatori. Tõesti töötab ! Selgub, et C teeb mingit automaagilist ja talle sobivat muutujate lõdva randmega muundamist 16-bitisest formaadist 8-bitisesse ja vastupidi. Selguse mõttes kirjutas Eiko koodi nati ringi, et kõik oleks 16-bitine. Tõlgin selle kohe, kui aega saan asmi ja riputan siia üles. Ehk on siis ka itestele "dinosaurustele" abiks Muide, asmi tundmine võib vaid jama kaela tuua, kuskilt lugesin,et sääraseid friike peetakse potensiaalselt kahjulikeks (teavad liiga palju). Ehk siiski KaPo nii ei arva... Vist mainisn, et koodi mõte on lugeda taeva heleduse analüsaatori näitu (Unihedron, tulemus= magnituudi kaaresekundi kohta), GPSi koordinaate ja võimalusel ka lennukõrgust ning kiirust kopterile pandud meerikult et registreerida valgusreostuse taset Tallinna kesklinna tänavatel öisel ajal. Vslmid koodi riputan ka siia üles. Hetkel oskan juba Unihedroniga ja tavalise GPS-vastuvõtjaga sotid sirgeks rääkida ja SD-kaardile kirja panna. Ärge siis UFOsid kahtlustage, kui kesklinna taevas mingil ööl imelikke tulesid näha - see võin olla mina (kui lennuamet loa annab)... RE: CRC25 - kuidas ? - madis - 05-02-2015 Ääremärkusena: C - l on kõik viiruse tunnused, võiks öelda et parim viirus üldse kuna levib nii mööda arvuteid kui inimesi ! Sest miks kasutada iganenud definitsioone nagu byte, word, dword... selle asemel ikka int (16 või 32 bitti) unsigned int (seesama aga..mis aga ?) short int (8 bitti või 16 bitti) char (hetkel vist 8 bitti aga noh nt unicode põhjal võiks olla ju 16 bitti ? mida char tähendaski.. ? ) jne, sest siis saab ju teha asja PLATVORMIST SÕLTUVAKS mis küll minu teada läheb C mõttega vastuollu aga noh kokkuvõttes äkki mõte ei olnud see mida me eeldame vaid hoopis midagi õelamat RE: CRC25 - kuidas ? - A.R. - 05-02-2015 (05-02-2015, 12:56 AM)madis Kirjutas: Sest miks kasutada iganenud definitsioone nagu Eks ta nii ole. Ostad PICi programmaatori koos translaatoriga ja see ei tunnista byte, word, dword tahab hoopis short ja long On nõus ka tekstiga unsigned long long tmp Seda tingimusel et // tmp^= (tmp<<4); tmp = (tmp ^ (tmp << 4)) &0xFF; //1. ok Annab 7F1C unsigned char, mis võiks sobida, annab vale koodi. Seda MPLAB IDE translaatoriga. Kui sama asja teha lcc-32 all siis unsigned char on sobiv. ja seal sobib ka tmp^= (tmp<<4); Jälle on siis tulnud aeg vaadata DisASMiga mis seal TEGELIKULT toimub. Niipalju siis PLATVORMIST ja SÕLTUVUSEST Aga see-eest annab MPLAB võimaluse saada see programm ka ASMina. Olen kuulnud et mõned mehed kirjutavad selles keeles. Õnneks vist mitte masinkäskudes perfolinti nagu 1968. a. tuli teha. RE: CRC25 - kuidas ? - madis - 05-02-2015 Lõppsõnaks ütleks: main(a,b)char**b;{int c=1,d=c,e=a-d;for(;e;e--)_(e)<_( c)?c=e:_(e)>_(d)?d=e:7; while(++e<a)printf("\xe2\x96%c",129+(**b=8*(_(e)-_( c))/(_(d)-_( c))));} HELL YEAH ! RE: CRC25 - kuidas ? - felch - 05-02-2015 (05-02-2015, 02:32 PM)madis Kirjutas: Lõppsõnaks ütleks: Maybe... Ma sain vahepeal asmi rutiini tööle. Tänud ideede eest ! Kood: ;=============================================================================== |