AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wie funzt der Assembler?

Ein Thema von Dax · begonnen am 20. Jan 2004 · letzter Beitrag vom 20. Jan 2004
 
Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
690 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Wie funzt der Assembler?

  Alt 20. Jan 2004, 13:16
Zitat von Alex_ITA01:
ADD:
klar sagt der Name schon das addiert eben zwei register miteinander aber irgendwie weiß ich nicht mehr recht wo der ganzzahlige anteil und der rest hinfällt (lässt sich aber einfach per debugger herausfinden)

ich kann dir ja gerne mal die liste mitbringen wenn du sie magst
hoffe das hier oben reicht erstmal ein stück für dich
mfg alex
bei Add wird zum 1. Register der Inhalt des Registers addiert, welches beim add-Befehl an 2. Stelle angegeben wird. Der Überschlag wird ins entsprechnde Gegen-Register gelegt. AX und DX bilden ein sogenanntes Registerpaar. CX und DX bilden auch eins, wenn ich mich recht entsinne.
Bsp:

mov ax, 0fffeh
mov bx, 3
add ax, bx
jo @@Overflow
;hier irgendwas machen, wenn es kein overflow gab
@@overflow:
;hier was machen, weil es den overflow gab

Danach steht in ax der wert 1 und in DX auch. Hört sich verwirrend, ist es aber ned. Testen kannst Du, ob es ein Überschlag gab, indem Du Dirdie Flags anschaust. Da Gibt es nämlich das OF (Overflow-Flag). Das wird dann gesetzt, wenn die letzte Operation einen Überlauf ergab. Bedingt springen kannst Du demnach mit dem Befehl "jo". Der Gegenbefehl dazu ist "jno" (Jump if No Overflow).

Bei mul sieht man das mit dem Overflow besonders gut.
Bsp.:

mov bx, 5
mov ax, 0ffffh
mul bx

in DX steht danach, wieoft AX einen overflow hatte.

ansonsten mußt Du insgesamt präzisere Fragen dazu stellen.

LG, MyRealName
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz