AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Assembler - Register dynamisch bestimmen.
Thema durchsuchen
Ansicht
Themen-Optionen

Assembler - Register dynamisch bestimmen.

Ein Thema von markus888 · begonnen am 16. Apr 2020 · letzter Beitrag vom 22. Mai 2020
 
markus888

Registriert seit: 23. Dez 2018
46 Beiträge
 
#1

Assembler - Register dynamisch bestimmen.

  Alt 16. Apr 2020, 12:00
Ich arbeite mich grade etwas in Assembler ein und schreibe meine ersten Codes damit.

Unter anderem frage ich mich, ob es irgendwie möglich ist, dynamischen Code zu generieren.

Die Aufgabe: In einem Multimedia Register muss ein Befehl auf eine dynamische Anzahl an Registern angewendet werden.

z.B. xmm0 bis xmm3 jeweils um 4 Bit shiften, dann xmm0 bis xmm3 jeweils mit xmm4 bis xmm7 summieren.

Das könnte dann genauso zmm0/ymm0 bis zmm(n) sein. - Ich weiß avx geht nicht direkt.

Zuerst dachte ich daran Opcodes dynamisch zu erzeugen um das ganze in einer Schleife zu durchlaufen.

DD EAX
DD EineVariable

aber das geht nicht - Fehlermeldung: Konstante erwartet.
Das einzige was der Compiler nicht reklamiert:
DD EineKonstante

mit DW/DB immer der Fehler (Konstante erwartet), egal wie ich die Konstante deklariere (Byte, Word, DWord)

In der Hilfe gibts ja diverse Beispiele dazu:

http://docwiki.embarcadero.com/RADSt...sembler-Syntax

z.B: DD MyVar { Pointer to MyVar }

Da wünscht sich der Compiler aber laut Fehlermeldung eine Konstante.

Kennt wer einen Weg, wie das funktionieren könnte, oder muss ich wirklich jeden Fall fix im Code hinterlegen?
Oder kann ich den Compiler dazu bewegen, eine normale Variable oder ein Register zu verwenden?

Danke Markus

Geändert von markus888 (16. Apr 2020 um 12:03 Uhr)
  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 03:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz