Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 7 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Pomoc s assemblerom...

Registrovaný: 26.06.05
Prihlásený: 11.03.11
Príspevky: 5
Témy: 1
Príspevok NapísalOffline : 11.03.2011 12:47

Dobry den chcem sa spytat ci je tu niekto kto by mi vedel pomoct s assemblerom...
assembler ako taky chapem,len neviem sa dostat cez jeden problem a ten je nasledovny

Nech má počítač nasledovné inštrukcie:
MOV <zdroj>, <destinacia>
SUB r1,r2
ADD r1,r2
JZ <adresa>
STOP
Napiste program v assembleri, ktory scita tri cisla na adresach a1 az a3 a odcita od nich sumu cisel na adresach a4 a a5. Porovna vysledok s cislom na adrese a5. a v pripade ak tento vysledok je rovny nule ulozi na adresu a6 obsah registra r1 ak nie tak obsah registra a2. po vykonani tychto instrukcii sa program zastavi...

no a problem nastava tu,presuny,scitanie,a odcitanie spravit viem ale neviem ako mam spravit to podovnanie a zistit ci je to nula,alebo nie... je tu niekto kto by mi to vedel vysvetlit ?

Dakujem za kazdu odpoved...


Offline

Skúsený užívateľ
Skúsený užívateľ
Pomoc s assemblerom...

Registrovaný: 11.01.09
Prihlásený: 18.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 11.03.2011 13:05

Na porovnavanie sa pouziva isntrukcia CMP ( ak sa bavime o 8086 platforme ):
Citácia:
CMP <A1>, <A2>

Od A1 sa odcita A2 a nastavia sa registre priznakov ( vysledok sa ale nikde neulozi! ). Cize ak je vysledok nula ( vysledok odciatnia jedneho cisla od takeho isteho cisla je nula ), register ZF ( zero flag ) sa nastavi na nulu. A tento stav sa zistuje pomocou instrukcie JZ. Ak je ZF rovny nule, skoc na navestie urcene v instrukcii JZ:
Citácia:
JZ <navestie>


Ak ale nemas k dispozicii tuto instrukciu, musis pouzit instrukciu SUB, ale pri tejto sa prepise premenna A1, takze si musis vytvorit kopiu tejto premennej a tu podat instrukcii SUB.


Offline

Užívateľ
Užívateľ
Pomoc s assemblerom...

Registrovaný: 26.06.05
Prihlásený: 11.03.11
Príspevky: 5
Témy: 1
Príspevok Napísal autor témyOffline : 11.03.2011 13:17

dakujem, takze ked to spravne chapem moze to byt neako takto?
ADD a1,a2,a3
SUB a4,a5
JZ AX
STOP


v zadani som mal este pri instrukcii JZ napisane: ak je vysledok preschadzajucej operacie rovny nule,skok na adresu AX

takze mi to vychadza ze by to malo byt dobre


Offline

Skúsený užívateľ
Skúsený užívateľ
Pomoc s assemblerom...

Registrovaný: 11.01.09
Prihlásený: 18.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 11.03.2011 13:36

majosisk píše:
ADD a1,a2,a3


Takto nie. Instrukcia ADD moze mat maximalne dva parametre. Ak chces spocitat tri cisla, tak takto:
Kód:
ADD a1, a2      ; vysledok je ulozeny v a1
ADD a1, a3      ; celkovy vysledok je opat ulozeny v a1


Offline

Užívateľ
Užívateľ
Pomoc s assemblerom...

Registrovaný: 26.06.05
Prihlásený: 11.03.11
Príspevky: 5
Témy: 1
Príspevok Napísal autor témyOffline : 11.03.2011 14:09

aha dakujem, takze po spravnosti...
ADD a1,a2
ADD a1,a3
SUB a4,a5
JZ ax
STOP
?
dakujem pekne ...


Offline

Skúsený užívateľ
Skúsený užívateľ
Pomoc s assemblerom...

Registrovaný: 11.01.09
Prihlásený: 18.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 11.03.2011 14:28

Aha, ty to uz chces cele skontrolovat. Tak potom to je este stale zle :)

Kód:
; scitanie a1 az a3
ADD a1, a2
ADD a1, a3

; suma cisel a4 a a5
ADD a4, a5

; odcitanie sumy od suctu
SUB a1, a4

; porovnanie vysledku ( ulozenom v a1 ) s hodnotou a5
SUB a1, a5

; ak je vysledok nula, cisla sa zhoduju, pokracuj na navestie DALEJ. Ak sa nezhoduju STOP
jz DALEJ
MOV a6, a2
STOP

DALEJ:
MOV a6, r1
STOP


Offline

Užívateľ
Užívateľ
Pomoc s assemblerom...

Registrovaný: 26.06.05
Prihlásený: 11.03.11
Príspevky: 5
Témy: 1
Príspevok Napísal autor témyOffline : 11.03.2011 14:29

dakujem ti, mas u mna pivecko! :D no dufam ze to pochopim :D


Odpovedať na tému [ Príspevkov: 7 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. pomoc s assemblerom

v Assembler, C, C++, Pascal, Java

0

347

14.06.2010 11:35

Majkl81 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. prepojenie c s assemblerom

v Assembler, C, C++, Pascal, Java

1

856

22.12.2006 18:24

Alyx_Vance Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pomozete mi prosim s assemblerom?

v Assembler, C, C++, Pascal, Java

2

639

15.01.2008 18:04

programator Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc pomoc prosim nefunguje internet

v Ovládače

7

1129

09.09.2017 20:37

Smith Wesson Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pomoc pri pomoc pri skladaní PC - od 1 500 do 1 800 Eur (rozlíšenie 1440p)

v PC zostavy

13

795

28.09.2023 20:23

johny314 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pomoc

v ATI/AMD grafické karty

3

863

02.01.2008 7:51

Daron Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v nVidia grafické karty

1

1032

02.02.2007 10:51

Harlequin Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v JavaScript, VBScript, Ajax

2

876

15.05.2009 20:15

firewall Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v ATI/AMD grafické karty

3

699

04.03.2008 15:00

Mir Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pomoc

v Počítačové hry

2

588

13.06.2012 18:02

PepeTheDragon Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. POMOC

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Ostatné

30

2267

27.09.2009 20:01

workoholik16 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v ATI/AMD grafické karty

10

1059

10.01.2008 8:48

kasom Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v PHP, ASP

2

786

02.02.2008 17:17

Punker661 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v Ostatné

13

951

08.08.2009 22:16

malcolm Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v PHP, ASP

6

709

01.08.2008 16:27

Darkeye18 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v Monitory, televízory a projektory

2

874

19.02.2008 13:40

patqo_he Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra