Mikroprocesory, arytm, ˙ ˙ ˙


™ ® ©

Politechnika Lubelska

Laboratorium podstaw systemów mikroprocesorowych

w Lublinie

Ćwiczenie nr 3B

Nazwisko:

Garbacz

Kuźma

Imię:

Tomasz

Jacek

Semestr

V

Grupa

ED 5.3

Rok akademicki

1997/98

Temat ćwiczenia:

Operacje arytmetyczne.

Data wykonania

07.11.97

Ocena:

1. Cel ćwiczenia :

Zapoznanie się z podstawowymi instrukcjami arytmetycznymi i zastosowaniem ich do działania na liczbach.

;************************************************

;LEKCJA 3B - PROSTE OPERACJE ARYTMETYCZNE

;PRZYKťAD 1 - LICZBY UJEMNE U2

;************************************************

LJMP START

ORG 100H

START:

LCALL LCD_CLR

CLR A ;zerowanie akumulatora

CLR C ; zerowanie flagi C

SUBB A,#1 ;odjęcie 1 od akumulatora

MOV R0,A ;przepisanie zawartości akumulatora do R0

LCALL WRITE_HEX

MOV A,R0 ;A <- R0=-1

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

LCALL WRITE_HEX

SJMP $

Program ukazuje zastosowanie instrukcji odejmowania i zapisu liczb ujemnych w kodzie U2.

LJMP START

ORG 100H

START:

LCALL LCD_CLR

CLR A ;zeruj A

LCALL WAIT_KEY

MOV B,#10 ;wprowadzanie

MUL AB ;dziesiątek

MOV R3,A ;odjemnej

LCALL WAIT_KEY ;wprowadzanie

MOV R4,A ;jednostek

ADD A,R3 ;odjemnej

MOV R5,A

MOV B,#10

DIV AB ;zamiana

SWAP A ;na

ADD A,B ;kod BCD

MOV R0,A

LCALL WRITE_HEX

MOV A,#'-'

LCALL WRITE_DATA

MOV A,#16 ; wypisanie na wyświetlaczu

LCALL WRITE_HEX ; cyfry 10

MOV A,#'='

LCALL WRITE_DATA

MOV R1,#10

MOV A,R5 ;

CLR C ;odejmowanie

SUBB A,#10 ;od akumulatora liczby 10

MOV R0,31H

MOV @R0,A ;

DEC R0 ;

LCALL HEX_BCD ;zamiana wyniku z postaci HEX na BCD

INC R0 ;

MOV A,@R0

LCALL WRITE_HEX

INC R0

MOV A,@R0

LCALL WRITE_HEX

SJMP $

Powyższy program powoduje odjęcie od liczby dwucyfrowej wczytanej z klawiatury liczby 10 i wyświetlenie na wyświetlaczu LCD całego procesu.

;************************************************

;LEKCJA 3B - PROSTE OPERACJE ARYTMETYCZNE

;PRZYKťAD 2 - KALKULATOR BCD

;************************************************

LJMP START

ORG 100H

START:

LCALL LCD_CLR

LCALL WAIT_KEY ;pobierz pierwszy czynnik

MOV B,#10 ;zamień liczbę na BCD

DIV AB ;dzieląc przez 10

SWAP A

ADD A,B

MOV R0,A ;zapamiętaj w R0 (BCD)

LCALL WRITE_HEX ;wypisz na LCD

MOV A,#'+' ;znak sumy

LCALL WRITE_DATA ;wyświetl jako znak

LCALL WAIT_KEY ;pobierz drugi czynnik

MOV B,#10 ;zamień liczbę na BCD

DIV AB ;dzieląc przez 10

SWAP A

ADD A,B

MOV R0,A ;zapamiętaj w R1 (BCD)

LCALL WRITE_HEX ;wypisz na LCD

MOV A,#'=' ;znak równości

LCALL WRITE_DATA ;wyświetl jako znak

MOV A,R0 ;pierwszy czynnik do A

ADD A,R1 ;dodaj drugi czynnik

DA A ;poprawka dodawania

;liczb BCD

LCALL WRITE_HEX ;wypisz wynik na LCD

SJMP $

Program umożliwia zaobserwowanie operacji wykonywanych na liczbach zapisanych

w formacie BCD. Listing programu zawiera instrukcję poprawki dziesiętnej DA, używanej

przy operacji dodawania liczb BCD w celu otrzymania wyniku w tym samym formacie.

;**********************************

;Program ** Konwersja BCD\BIN **

;**********************************

LJMP START

ORG 100H

START:

MOV A,@R0

ANL A,#0F0H

SWAP A

MOV B,#10

MUL AB

XCH A,B

MOV A,@R0

ANL A,#0FH

ADD A,B

MOV @R0,A

SJMP $

Program powoduje zamianę liczby formatu spakowane BCD zawartej pod adresem wskazywanym przez rejestr R0, na liczbę w formacie BIN, która jest wprowadzana pod ten sam adres (zaw.R0).



Wyszukiwarka

Podobne podstrony:
mikroprocesor 2
Opracowanie Zagadnień na egzamin Mikroprocki
PODSTAWY TECHNIK MIKROPROCESOROWYCH, Studia Pwr INF, Semestr IV, PTM
mim, studia Polibuda Informatyka, III semestr, mikroprocesory i mikrokontrolery (mim)
C1 Techniki mikroprocesorowe sprawozdanie
Anteny mikropaskowe cz3
04 system mikroprocesorowy i peryferia
mikroprocesorowy system sterowania skladem mieszanki silnika zasilanego gazem plynnym typ al700
Podstawy techniki mikroprocesor Nieznany
zadania egzaminacyjne dzienne (PTM), elektro, 1, Podstawy Techniki Mikroprocesorowej
80C51 pytania i odpowiedzi, elektro, 1, Podstawy Techniki Mikroprocesorowej
mikroproce
Mondeo mk3 wymiana mikroprzelacznika klapy bagaznika
mikroprocesory sprawko 1
zadania egzaminacyjne zaoczne 2006 07 (PTM), elektro, 1, Podstawy Techniki Mikroprocesorowej
Egzamin z PTC podst kombinacyjne, elektro, 1, Podstawy Techniki Mikroprocesorowej

więcej podobnych podstron