[ EXeX @ 03.06.2005. 20:47 ] @
Dakle između ostaloga mi kod procesora imamo registre:
AX,BX,CX i DX.

Znam značenje ovih registara, AX je akumulator i skuzio sam sljedeće, da sve operacije pridruživanja idu preko njega.Npr:
move ax,cs
mov ds,ax

Pitanje zasto ne moze jednostavno samo da napisemo move ds,cs

Dalje imamo BX, base registar.Meni nije jasno sta se ovdje podrazumijeva pod bazom.Kako se i gdje i kad se koristi ovaj registar.

Isto pitanje za DX, data registar.

Hvala.
[ stsung @ 06.06.2005. 00:41 ] @
Pozd.
Odgovor na prvo pitanje je jednostavan. Ne postoji procesorska instrukcija (mashinski opcode) kojom je procesoru moguce narediti MOV DS, CS. Svaka instrukcija ima svoj odgovarajuci binarni opcode koji procesor razume, na primer 0xC3 za RETN, a poshto pri radu sa segmentnim registrima opcode ne postoji za drugi segmentni rekistar kao akumulator takvu narednu je nemoguce izdati.

BX ili bazni registar mozhe da se koristi za sve za shta i ostali ?X registri, s tim shto BX mozhe da se koristi i za adresiranje... znachi instrukcija poput MOV [BX], AX vrednost BX tertira kao memorijsku adresu u aktivnom segmentu.

DX je koliko se secam isti kao ostali registri... nishta posebno sa njime. CX registar je recimo bitan za operacije prebrojavanja poput LOOP koje zahtevaju da se vrednost brojacha nadje u CX.

Svako dobro.
[ EXeX @ 06.06.2005. 01:49 ] @
Hm sad je jasnije.
Ali ovo nigdje nisam mogao da nađem.
Da li ima kakav kvalitetan tutor ama bas za pocetnike u asmu,
gdje se objasnjavaju ovakove stvari.
Pozdrav.