Hien Ovelse2

Fra Hiofwiki

Gå til: navigasjon, søk

Innhold

Assembly Programmering

Oppgave 1

Skriv et program som regner ut gjenomsnittet av verdiene i adressene X, Y og Z og lagrer resultatet i W.

0:  LOD X      Laster opp X fra akk.
2:  ADD Y      Addere med Y (+)
4:  ADD Z      Addere med Z
6:  STO T1     Lagrer i T1 
8:  LOD T1     Laster opp T1 fra akk
10: DIV T2     Dividere med T2 
12: STO W      Lagere i W
14: HLT        Stopp

Oppgave 2

Skriv et program som finner den største av verdiene i adressene X, Y og Z og lagrer den i W.


0:  LOD Y         Sammeligne om Y>X
2:  SUB X         
4:  STO W         X lagret
6:  CPL W         X<0 Jump, hvis ikke fortsett
8:  JMZ 26
10: LOD Z         Sameligne X>Z
12: SUB X
14: STO W         X lagret
16: CPL W         X<0 Jump, hvis ikke fortsett
18: JMZ 42
20: LOD X
22: STO W         X er størst
24: HLT 
.............
26: LOD Z         Sameligne Y>Z
28: SUB Y
30: STO W         Y lagret
32: CPL W         Y<0 Jump, hvis ikke fortsett 
34: JMZ 42
36: LOD Y 
38: STO W         Y er størst
40: HLT 
.............
42: LOD Z
44: STO Z         Z er størst
46: HLT
.............

Oppgave 3

Skriv et program som regner ut resten du får når du deler et tall med et annet eks. 8 / 3 = 2 rest 2.


0: LOD X      Laster opp X
2: STO W      Lagrer i W ( her ligger resten )
4: SUB Y      Trekker fra Y
6: STO X      Lagrer i X
8: CPL X      X<0 Jump, hvis ikke fortsett
10: JMZ 0
14: HLT