Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

asembler

kurdzi
-
-
Posty: 1
Rejestracja: 27 paź 2008, o 11:55
Lokalizacja: katowice

asembler

Postautor: kurdzi » 31 paź 2008, o 12:38

Witam wszystkich mam problem z rozwiazaniem krotkiego programu w asemblerze. Bardzo prosze o pomoc. Oto program;

Kod: Zaznacz cały

MVI B,OF LXI H,2CIF MOV M,B LXI D,00F MOV E,L INX H MOV C,L LOOP INR C JZ LOOP MOV L,C MOV M,D
Zakladamy ze przed rozpoczeciem realizacji ww programu rejestry maja nastepjace wartosci
HL=XXXX DE=XXXX A=XX BC=XXXX CY=0 M[2C21]=XX M[2C1F]=XX

Podaj zawartosc powyzszych rejestrow po wkonaniu programu
HL= DE= A= BC= CY= M[2C21]= M[2C1F]=

Edit: Proszę o używanie

Kod: Zaznacz cały

[/color]
Ostatnio zmieniony 31 paź 2008, o 18:13 przez kurdzi, łącznie zmieniany 2 razy.

Awatar użytkownika
Darlington
-
-
Posty: 574
Rejestracja: 12 lis 2007, o 18:18
Lokalizacja: stąd!

Postautor: Darlington » 31 paź 2008, o 16:14

Na jaki procesor bądź uC piszesz?

Awatar użytkownika
ZbeeGin
-
-
Posty: 170
Rejestracja: 3 kwie 2003, o 10:10
Lokalizacja: Metropolia Katowice

Postautor: ZbeeGin » 31 paź 2008, o 19:02

Jest to niewątpliwie Zilog Z80 lub jego następca.

Awatar użytkownika
tasza
-
-
Posty: 456
Rejestracja: 17 sty 2005, o 10:52

Postautor: tasza » 4 lis 2008, o 11:41

Jest to niewątpliwie Zilog Z80 lub jego następca.
Jest to niewątpliwie procesor Intel 8080/8085, którego następcą jest Z80.
To tak dla ścisłości.

:arrow: kurdzi

Kod: Zaznacz cały

MVI B,OF ; B = 0x0F LXI H,2CIF ; para HL = 0x2C1F (H = 0x2C, L = 0x1F) MOV M,B ; komórka o adresie 0x2C1F zawiera 0x0F LXI D,00F ; para DE = 0x000F (D = 0x00, E = 0x0F) MOV E,L ; E zawiera 0x1F INX H ; HL = HL + 1 czyli jest HL = 0x2C20 (H=0x2C, L=0x20) MOV C,L ; C zawiera 0x20 LOOP INR C ; C = C + 1 JZ LOOP ; pętla się dalej nie wykona, ponieważ nic nie ustawiło flagi Z na 1 ; po jednym obiegu C = 0x21 MOV L,C ; L = 0x21, ponieważ wartość pochodzi z C, a ten był inkrementowany wcześniej ; podczas jednego obiegu pętli LOOP MOV M,D ; zawartość komórki wskazanej przez HL (o adresie 0x2C21) ; będzie 0x00, poniewaz wartość pochodzi z D, a to było ustawione wyżej ; i nie zmieniane w programie

Mam nadzieję, że w powyższej analizie się nie pomyliłam, nie mam debuggera w głowie....

Polecam poczytać:
:arrow: http://natasza.biecek.files.googlepages ... amming.pdf

Polecam skorzystać:
:arrow: http://sti.net.pl/~zealot/?d=SKiM/Symulatory (avsim85.arj)

pzdr,
Natasza

Awatar użytkownika
ACeK
-
-
Posty: 1520
Rejestracja: 30 mar 2003, o 19:35
Lokalizacja: Kielce

Postautor: ACeK » 4 lis 2008, o 23:41

Obrazek tasza mozesz sie pochwalic gdzie znalazlas swoja rowiesniczke? w mojej stacji dyskow do Atari jest sterownik na 8085 Obrazek

Awatar użytkownika
tasza
-
-
Posty: 456
Rejestracja: 17 sty 2005, o 10:52

Postautor: tasza » 5 lis 2008, o 11:01

tasza mozesz sie pochwalic gdzie znalazlas swoja rowiesniczke?
W szufladzie... :) A dwie inne na Wolumenie....
w mojej stacji dyskow do Atari jest sterownik na 8085
o?! a to zaskoczka...że w CA2001 było Z80 to pamiętam, ale 8085?
A tu rzeczywiście - stacje TOMS 710/720 ( http://www.dereatari.republika.pl/schematy.htm )

Jak chcesz troszkę więcej o 8085 to przeglądnij październikowe EdW, str.60 (i po reklamie....)

Wróć do „Projektowanie PCB, programy EDA, CAD, narzędziowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 34 gości