Deleni na '51 - word/byte

Jiri Bezstarosti jiri
Středa Březen 17 12:06:47 CET 2004


Zdravim.

Naposledy jsem delil 4 bajtove cislo na PIC a navic to melo
byt i spocitane vzdy za stejny pocet cyklu, coz nedelala zadna
rutinka nalezena na webu. Zadna instrukce deleni mi nijak
nechybela. Je nutne ji pouzit za kazdou cenu ? :-).
Opravdu jsem se snazil vymyslet neco lepsiho, ale asi
nejsem takovy supermatematik, abych prevratil vsechny
teorie na hlavu a delil jinak lepe. Zkratka Nobelovka zase
nebude, jaka to smula :-))).

--
Jiri Bezstarosti

-----P?vodn? zpr?va-----
Od: Pavel Kudrna <Pavel.Kudrna@mff.cuni.cz>
Komu: hw-news@list.gin.cz <hw-news@list.gin.cz>
Datum: 28. listopadu 2001 22:28
P?edm?t: Re: Deleni na '51 - word/byte


>No jo, ale jak pri tom vyuzijete tu instrukci deleni?
>:-)
>Pavel Kudrna.
>
>jiri@bezstarosti.cz wrote:
>>
>> Dyk jsem to psal,
>> posunout cislo kterym delime bitove nahoru, aby jeste
>> bylo mensi max. rovne delenemu a odecist.
>> Takto tak dlouho, az zbyde z deleneho mene nez cim delime.
>> Kolikrat jsme pred odectenim posunuli vime a tak vime,
>> kolikrate jsme to cislo odecetli (posuv o jeden bit vzdy cislo
>> nasobi dvemi o dva ctyrmi o tri osmi atd.).
>> Jde to snad nejak rychleji ?
>>
>> --
>> Jiri Bezstarosti
>>
>> -----Original Message-----
>> From: Pavel Kudrna [mailto:Pavel.Kudrna@mff.cuni.cz]
>> Sent: Wednesday, November 28, 2001 12:18 PM
>> To: hw-news@list.gin.cz
>> Subject: Re: Deleni na '51 - word/byte
>>
>> Vase obavy nezbyva nez sdilet, protoze ta instrukce deleni bytu bytem
>> je na deleni asi opravdu malo uzitecna.
>>
>> Uznavam, ze jsem to napsal mlhave, ale nemyslel jsem to jako "uzitecny
>> napad hodny okamzite realizace".
>> Pri pisemnem deleni napr. trojcifernym cislem ale taky hned nevite,
>> "kolikrat" to bude. Zkusite delit nejvyssi cifrou delitele a tak
>> odhadnete jednu cifru podilu. Tou pak vynasobite cely delitel a
>> vysledek odectete od delence. Bohuzel se obcas stane, ze po odecteni
>> mate zaporne cislo a musite odhadnutou cifru podilu snizit. Urcite
>> by to slo takhle naprogramovat, ale...
>> Napr. pri deleni 90/19 by byla odhadnuta cifra podilu 9/1=9, ale
>> spravna je 4 :-)
>> Pavel Kudrna.
>>
>> Snail Instruments wrote:
>> >
>> > Obavam se, ze takhle jednoduche to nebude. Napriklad chceme vydelit
>> > (desitkove) 60/12 (=5), takze 60/1 = 60 a 60/2 = 30. A ted jak z
>> > castecnych vysledku 60 a 30 dostaneme konecny vysledek 5? Vlastne
>> > ano, vynechame nuly, secteme, vydelime dvema a zaokrouhlime
>> > nahoru... :-)
>> > J. Hanzal
>> >
>> > >> mejme napr vypocitat 1E445FA0/3E (=7CF948 zbytek 30)
>> > >> takze 1E4/3E=7 zbytek 32 sepiseme 4
>> > >
>> > >Tak to nedelte celym bytem, ale rozpulte ho na horni a dolni "nibble"
>> > >(4 bity).
>> > >Takze vydelte nejdriv 3 a potom E. Predpokladam, ze '51 ma instrukci
>> > >typu "swap nibble", abyste to nemusel rotovat.
>
>





Další informace o konferenci Hw-list