Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Bad_King gesperrt
Anmeldungsdatum: 15.04.2006 Beiträge: 455 Wohnort: nähe Stuttgart
|
Verfasst am: 09.06.2006, 21:51 Titel: "If" in Assembler |
|
|
Hi,
wie kann ma in Assembler das mit dem "If" machen?
Also welchen befehl gibts dazu? _________________ Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an) |
|
Nach oben |
|
|
Infection 93 gesperrt
Anmeldungsdatum: 11.03.2006 Beiträge: 377 Wohnort: Egal, dort wo ein PC ist.
|
Verfasst am: 09.06.2006, 21:56 Titel: |
|
|
Das ist sehr schwer... Da gibt es sowas nicht, aber etwas Ähnliches:
Code: |
CMP AX,HFFFF
;aktionen
|
CMP steht für Vergleichen (CoMPare). _________________ Meine Homepage:
www.infection93.org
Und das Forum von mir und King01:
www.infection93.bboard.de |
|
Nach oben |
|
|
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 10.06.2006, 00:49 Titel: |
|
|
Solche Fragen gehören ins Profi Forum, nicht umsonst steht da
Zitat: | Fragen zu ASM, Programmieren von Hardware/Elektronik mit QB/FB etc. |
|
|
Nach oben |
|
|
A.K.
Anmeldungsdatum: 02.05.2005 Beiträge: 467 Wohnort: HH
|
Verfasst am: 10.06.2006, 11:31 Titel: |
|
|
so, bevor es verschoben wird...
Bei einem CMP wird das jeweilige Register mit einem Wert verglichen oder einem anderen Register verglichen.
Wenn beide Werte gleich sind wird das ZERO-FLAG gesetzt. Wenn die Werte nicht gleich sind wird das ZERO-FLAG gelöscht.
Zusätzliche FLAGS werden bei der Überprüfung auch gesetzt. Z.B. ob der Wert größer oder kleiner ist.
JA - Jump Above - Springe wenn größer (16Bit)
JB - Jump Below - Springe wenn kleiner (16Bit)
JG - Jump Greater - Springe wenn größer (7 Bit, mit Vorzeichen)
JL - Jump Lesser - Springe wenn kleiner (7 Bit, mit Vorzeichen)
Kombinationen gibt es dafür auch:
JAE - Jump Above or Equal ( >= )
JBE - Jump Below or Equal ( <= )
Aus diesen ganzen Sprung-Möglichkeiten kannst du dir jede Art von IF-Verschachtelung zusammenbauen.
Die Sprungbefehle selber sind auch noch mal in meinem ASM-Tutorial beschrieben:
http://www.iconsoft.de/index.php?show=tutorial_asm
MFG A.K. _________________
http://forum.IconSoft.de
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU* |
|
Nach oben |
|
|
c.m.obrecht
Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 16.06.2006, 20:36 Titel: |
|
|
am besten cmp eax, [zu vergleichender Wert]
je Label... (wenn mit zu vergleichendem Wert übereinstimmt springe zu Label soundso).
wie in BASIC if Variable(das was in eax ist in asm) = zuVergleichender Wert then goto Label |
|
Nach oben |
|
|
Marky
Anmeldungsdatum: 02.09.2004 Beiträge: 1173
|
Verfasst am: 17.06.2006, 23:40 Titel: |
|
|
--> verschoben |
|
Nach oben |
|
|
|