Mikroprocesory, PROFESOR, Cel ˙wiczenia:


Cel ćwiczenia:

Celem ćwiczenia jest zapoznanie się ze sposobem wykonywania podstawowych operacji arytmetycznych na liczbach jednobajtowych oraz metod konwersji formatów stosowanych do reprezentacji danych.

Zadanie nr1

LJMP START

ORG 100H

START:

LCALL LCD_CLR

CLR A

CLR C

SUBB A,#1

MOV R0,A

LCALL WRITE_HEX

MOV A,R0

LCALL WRITE_HEX

MOV A,R0

ADD A,#1

LCALL WRITE_HEX

SJMP $

Efektem działania programu jest pojawienie się „FF00”

Modyfikacja programu polegająca na odejmowaniu liczby 10 od wartości pobranej z klawiatury:

LJMP START

ORG 100H

START:

LCALL LCD_CLR wyczyść wyświetlacz

LCALL WAIT_KEY pobierz liczbę z klawiatury do akumulatora

MOV R0,A wpisz tą liczbę do rejestru R0

LCALL WRITE_HEX wyświetl tą liczbę

MOV A,#'-' wpisz do akumulatora liczbę odpowiadającą „-” w ASCII

LCALL WRITE_DATA wyświetl ten znak

MOV A,#'1' wpisz do akumulatora liczbę odpowiadającą „1” w ASCII

LCALL WRITE_DATA wyświetl ten znak

MOV A,#'0' wpisz do akumulatora liczbę odpowiadającą „0” w ASCII

LCALL WRITE_DATA wyświetl ten znak

CLR A wyzeruj A

CLR C wyzeruj C

SUBB A,#10 odejmij od akumulatora 10

MOV R1,A przenieś wartość akumulatora do R1

MOV A,#'=' wpisz do akumulatora liczbę odpowiadającą „=” w ASCII

LCALL WRITE_DATA wyświetl ten znak

MOV A,R0 R0:=A

ADD A,R1 A:=A+1

LCALL WRITE_HEX wyświetl A

LJMP $ zapętl się

Efektem działania programu jest wyświetlenie wyniku odejmowania 10 od liczby wprowadzonej z klawiatury.

Wynik wyświetlany jest w kodzie szestnastkowym.

Zadanie nr 2

LJMP START

ORG 100H

START:

LCALL LCD_CLR

LCALL WAIT_KEY ;pobierz pierwszy czynnik

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

DIV AB ;dzieląc przez 10

SWAP A

ADD A,B

MOV R1,A ;zapamiętaj w R1 (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



Wyszukiwarka

Podobne podstrony:
CWICZ48, 1.Cel ˙wiczenia : Zbadanie charakterystyki o˙wietleniowej fotoopornika,
zjawiskiem rozszerzalności cieplnej ciał stałych, ˙ Cel ˙wiczenia:
NAPED1V2, 1. Cel ˙wiczenia:
Pomiar mocy czynnej 2, 1. Cel ˙wiczenia.
06'''', Cel ˙wiczenia
122, CEL ˙WICZENIA
33, CWI27, ˙ Cel ˙wiczenia:
Badanie wyładowań ślizgowych v2, Cel ˙wiczenia:
Kompensator, CEL ˙WICZENIA
generatory sinus, Cel ˙wiczenia
Badanie UAR obiektu oscylacyjnego z regulatorem PD v6, 1. Cel ˙wiczenia:
AUTO6A, 1. Cel ˙wiczenia:
lab.12, Cel ˙wiczenia:
AUTO6A, 1. Cel ˙wiczenia:
lab.12, Cel ˙wiczenia:
LABORK~1, Cel ˙wiczenia:
Badanie statystycznego charakteru rozpadu promieniotwórczego, Promieniowanie metodą absorbcyjną, Cel
Obwody nieliniowe zawierające prostownik, Cel ˙wiczenia

więcej podobnych podstron