MIKROT~1.DOC

(64 KB) Pobierz
LJMP

LABORATORIUM PODSTAW SYSTEMÓW MIKROPROCESOROWYCH

 

Imię i Nazwisko: Adamczuk Mariusz

Grupa:    ED 5.3

Data wyk. ćwicz.  23.11.98

Numer ćwiczenia

3B

Temat ćwiczenia:

Operacje arytmetyczne

Ocena:

 

ZADANIE NR.1

 

                LJMP              START

              ORG              100H

START:

              LCALL              LCD_CLR

              CLR              A                            ;zeruj A

              CLR              C                            ;zeruj C

              LCALL              WAIT_KEY      

              MOV              R0,A

              LCALL              WRITE_HEX

              MOV              A,#'-'

              LCALL              WRITE_DATA

              MOV              A,#10H

              LCALL              WRITE_HEX

              MOV              A,#'='

              LCALL              WRITE_DATA

              MOV              A,R0

              ADD              A,#0F6H                            ;A <- 0-1 = -1

              LCALL              WRITE_HEX

              SJMP              $

START

 

 



Zeruj A

 



Zeruj C

 



Wczytaj liczbę do ACC

 

 



Przepisz ACC          do  R0

 

 



Wypisz znak(-)



 

Przepisz wartość z R0 do ACC

 



Sumuj ACC z R0

 

Wyświetl wynik



 









W zapisie uzupełnienia do 2 wszystkie ujemne liczby mają najstarszy bit ustawiony na 1, natomiast najstarszy bit liczb dodatnich ustawiony jest na 0. Liczby w kodzie uzupełnienia do 2 są z zakresu       –128...127. Przy dodawaniu liczb z tego zakresu, których suma jest większa od 127 powstaje problem, gdyż suma tych liczb odczytywana jest jako liczba ujemna. Aby zasygnalizować to zdarzenie używa się specjalnej flagi OV, która sygnalizuje wystąpienie tego problemu  

 

ZADANIE NR.2

 

 

Lp

MNEM

AC

B

wyświetlacz

1

LJMP 0100H

00

00

 

2

LCALL 810CH

00

00

 

3

LCALL 811CH

21

00

 

4

MOV B,#0AH

09

00

 

5

DIVA B

09

0A

 

6

SWAP A

00

09

 

7

ADD A,B

00

09

 

8

MOV R0,A

09

09

 

9

LCALL 8104H

09

09

 

10

MOV A,#2BH

09

09

09

11

LCALL 8102H

09

09

09

12

LCALL 811CH

09

09

09+

...
Zgłoś jeśli naruszono regulamin