Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF

 

Kdo je autorem fotografií z výstavy " Tiché krajiny "?

V dnešní soutěži hrajeme o:



8051 převod DEC HEX(DEC)

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: 8051 převod DEC HEX(DEC)

Autor: xyz3

21:19:53 28.03.2011

Další krok by měl být takhle (bez záruky) a máš tam tedy 3x dělení a 3x násobení:

y = x + ((x / Ah) * 6h) + ((x / 64h) * 60h) + ((x / 3E8h) * 600h)

Připadá mi, že divmod + bitový posun je zajímavější.

Citovat příspěvek

 

Re: 8051 převod DEC HEX(DEC)

Autor: xxx123

20:16:37 28.03.2011

Jo, to vypadá reálně, ale něco podobného jsem vyplodil také, konkrétně: y = xh / Ah * 6 + ((xh / 64h) * 60h) + xh funguje to sice jen do 999, ale tak to je jen otázka dodělání. O co mi jde je, že 8051 je 8b, takže 8542d je tedy ve skutečnosti Acc = 21h, B = 5Eh. Jsou sice možnosti jak dělit 16b číslo, ale jednak to zabírá moc flash a navíc potřebuji celý ten převod narvat do max. 0,8 ms jelikož probíhá v c/c :-)

Citovat příspěvek

 

Re: 8051 převod DEC HEX(DEC)

Autor: xyz3

17:50:10 28.03.2011

Funguje to do 9999 a potřebuješ na to běžné algoritmy na dělení a zbytek po dělení pro 16-bit čísla. Násobení 16-ti lze šikovně zoptimalizovat.

x = 8542

y = x % 10
x = x / 10

y = y + 16 * (x % 10)
x = x / 10

y = y + (16 * 16) * (x % 10)
x = x / 10

y = y + (16 * 16 * 16) * x

Citovat příspěvek

 

8051 převod DEC HEX(DEC)

Autor: xxx123

17:20:32 28.03.2011

Zdravím,
potřeboval bych třeba alespoŇ nasměrovat; jak převést u 8051 DEC číslo na HEX ale tak aby mělo stejnou hodnotu jako DEC (mám po výpočtu třeba 8542d což je normálně 215Eh, ale potřeboval bych to tak převést, aby výsledek byl právě 8542h). S 8b to je bez problémů, ale 16b už nad tim trávim dva dny...
Díky za případné rady

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: