Načini naslavljanja operandov

Operand je v ukazu ponavadi podan z naslovom, kjer se nahaja. Če je operand pomnilniški, potem je naslov naslov pomnilniške besede, če pa je operand registrski, je naslov naslov registra – običajno zaporedna številka registra.

Z enobitnim naslovom opišemo zgolj naslova 0 in 1. Z dvema bitoma lahko določimo štiri naslove: 00, 01, 10 in 11. Za naslavljanje 16 registrov tako potrebujemo 4 bite: 24 = 2 · 2 · 2 · 2 = 16. Po drugi strani za naslavljanje pomnilniških besed potrebujemo bistveno več bitov. Predpostavimo, da imamo na voljo 4 GiB pomnilnika. V tem primeru potrebujemo kar 32 bitov za zapis vseh možnih naslovov (232 = 4 294 967 296).

Vaja

Vrste operacij

Aritmetične in logične operacije

Aritmetično-logični ukazi imajo običajno tri operande. Za dva operanda se bo izvšila operacija, medtem ko tretji operand podaja, kam naj se shrani rezultat. Primer ukaza, ki sešteje registra R1 in R2 ter rezultat shrani v register R3, je:

Podobno bi bili videti ukazi za ostale aritmetične in logične operacije, samo njihova operacijska koda bi se razlikovala.

Prenosi podatkov

CPE lahko tudi samo prenaša podatke med različnimi deli računalnika. Najobičajnejši prenos je iz pomnilnika v register (LOAD) oz. iz registra v pomnilnik (STORE). Možen je tudi prenos med dvema registroma oz. dvema pomnilniškima naslovoma. Ukazi za prenos podatkov imajo ponavadi dva operanda: eden določa, od kod beremo (izvor informacije), drugi določa, kam informacijo pišemo (ponor informacije). Kot primer si oglejmo ukaz, ki vrednost v registru R1 shrani na pomnilniški naslov addr:

Poleg tega imajo procesorji pogosto posebne ukaze za prenos podatkov iz vhodno-izhodnih naprav v register (IN) oz. obratno (OUT).

Za zvedave