Marcin Szczuka: Modele ObliczeÅ. WykÅad 3. Maszyny RAM i ...
Marcin Szczuka: Modele ObliczeÅ. WykÅad 3. Maszyny RAM i ...
Marcin Szczuka: Modele ObliczeÅ. WykÅad 3. Maszyny RAM i ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Program dla <strong>RAM</strong>Etykieta Instrukcja DziałanieREAD r 1 Wczytanie n do r 1LOAD r 1Wczytanie n do akumulatoraJGTZ pos if(r 1 = 0 )WRITE 0then return(0)JUMP endifSkok na koniec programupos: LOAD r 1 else – r 1 = n do akumulatoraSTORE r 2 r 2 := r 1SUB 1 r 0 := r 0 − 1STORE r 3 r 3 := r 1 − 1while: LOAD r 3 r 3 do akumulatoraJGTZ continue while r 3 > 0JUMP endwhile gdy r 3 = 0 - zakończcontinue: LOAD r 2 r 2 do akumulatoraMULT r 1 r 0 := r 2 ∗ r 1STORE r 2 r 2 := r 2 ∗ r 1LOAD r 3 r 0 := r 2SUB 1 r 0 := r 0 − 1STORE r 3 r 3 := r 3 − 1endwhile: WRITE r 2 return(r 2 )endif: HALT Koniec programu<strong>Marcin</strong> <strong>Szczuka</strong> (MIMUW) <strong>Modele</strong> Obliczeń 2008/2009 8 / 42