assembler 51 a pole

Jan Waclawek wek@evona.sk
Úterý Únor 20 15:51:14 CET 2007


Interna RAM je u '51 (presnejsie, u '52) = 256 byte, co zahrna aj 
registre a stack. Do toho je problem narvat 100x6 byte... :-)

Niektore '51 sice maju aj viac RAM interne na chipe, ale z pohladu 
programu sa k tomu pristupuje presne ako k externej RAM (MOVX), pripadne 
este aj s nejakymi obmedzeniami (napr. nie je mozne pouzit 8-bitovu 
adresaciu MOVX @Rx, alebo sa pouziva inak nez u povodnej '51).

Vseobecny priklad ako ziskat adresu a nasledne data z indexu do pola 
uviedol uz tuto kolega Michal HW. Kruhovy buffer sa nicim od pola 
nelisi, len tym, ze si pamatate dva indexy - zaciatok a koniec ulozenych 
dat - a pri inkremente resp. dekremente sa kontroluju a "zatocia". 
Alternativou je, ak sa pamata nie index ale priamo pointer, len vzhladom 
na pocet dat musi byt dvojbytovy (ale na druhej strane potom nie je 
potrebne nasobit).

wek



pm wrote:
> no idealni by byl nejaky kruhovy buffer  a pokud mozno v interni RAM 
> 
> Michal HW napsal(a):
> 
>>Prejdi na C...
>>Nejake ukazky kodu tu mam. Jak se bude zapisovat? Do zaplneni a pak konec? 
>>Nebo to bude kruhovy bufer? Bde to v externi pameti? EEPROM?
>>zhruba od pasu (uz jsem dlouhu v asm pro x51 nedelal):
>>    mov A, Pozice
>>    mov B,#6
>>    mul AB
>>    add A,#low Zacatek_Pole
>>    mov DPL,A
>>    mov A,B
>>    addc A,#high Zacatek_Pole
>>
>>;Tady DPTR ukazuje na pozadovany zaznam
>>;Ted staci jen:
>>    movx A,@DTPR
>>
>>V patek budu mit vice casu, pokud upresnite zadani mohu se podivat do svych 
>>zdrojaku
>>
>>Michal Gregor
>>
>>----- Original Message ----- 
>>From: "pm" <konference@komfi.cz>
>>To: "HW-news" <hw-list@list.hw.cz>
>>Sent: Tuesday, February 20, 2007 2:40 PM
>>Subject: assembler 51 a pole
>>
>>
>>dd,
>>
>>    potreboval bych v 51 assembleru udelat pole cisel  nenasel by se
>>nejaky kousek kodu kde by se dalo inspirovat ?
>>
>>priklad
>>
>>potrebuju ulozit 100 datumu, tj 100 zaznamu po 6ti cislech (070211)  a
>>umet v nich listovat
>>
>>diky PM
>>
>>
>>  
> 
> 
> 
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
> 



Další informace o konferenci Hw-list