CPU

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání

Verze z 17. 11. 2016, 21:41


Co je CPU?


Parametry procesoru

Technické parametry
Další parametry

Procesor z pohledu SW

Základní pojmy
Typy instrukcí
Strojový kód (ukázka)

Příklad — Součet aritmetické řady postupným sčítáním

; Vypocita soucet aritmeticke rady 
; --------------------------------
; Vysledek zustane v registru A a bude na prvnim miste v pameti vystupu. 
;  Bylo by lepsi cislo prevest na ASCII tvar, ale to by chtelo dalsi 
;  proceduru... ;) 

JMP start ; Skok na zacatek kodu. Nasleduje misto pro 
; promenne, to chceme preskocit. 

; Promenne: 
konecRady:   DB 7 ; Cislo, kterym aritmeticka rada konci 
vysledek:    DB 0       ; Sem zapisi vysledek 

start: ; Navesti, na ktere skaceme instrukci JMP

MOV C, konecRady     ; Ukazatel na promennou konecRady 
MOV A, [C] ; Ulozim do registru A hodnotu promenne 
;  (najdu hodnotu na adrese odkazu) 
MOV B, [C] ; Totez ulozim do B - bude to citac 

.zacatekCyklu: 
DEC B ; Snizim B (citac) o jednicku 
ADD A, B ; Vynasobim cislo v A cislem v B 
;  Vysledek bude v A 
CMP B, 0 ; Porovnam B s nulou 
JA .zacatekCyklu ; Pokud je B > 0, pokracuji v cyklu 

MOV D, vysledek ; Do registru D dam adresu promenne 

;  "vysledek" 
MOV [D], A ; Vysledek do promenne "vysledek" 

MOV D, 232 ; Uloz ukazatel na pamet pro vystup 
;  (graficka karta) 
MOV [D], A ; Vypisu vysledek na vystup 

 HLT              ; Konec programu

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje