high()/low()

Gast #20884
Lesenswert?
• ▲
▼
bei den avrs habe ich mit .dseg und .byte speicher gelabelt und hätte 
gerne die adresse der speicherstelle. da hab ich mich gefagt, ob ich mit 
low(speichername) den unteren inhalt von speichername oder den unteren 
teil der adresse zurück bekomme.
Gruß Patrick
Gast #20888
Lesenswert?
• ▲
▼
@Patrick
Ich der letzten Anwort hatte ich klar beschrieben wie du an die Adresse 
von Speicher kommst. Ich glaub die verwechselt die Begriffe etwas.
also nochmal etwas anders beschrieben:
.def    TEMP = R16
.def    ZL   = R30
.def    ZH   = R31

.dseg

SPEICHER: .byte 1

.cseg

LDS     TEMP,SPEICHER  ;Register TEMP = Inhalt SRAM an Adresse Speicher
LDI     ZL,low(SPEICHER)
LDI     ZH,high(SPEICHER)  ;Registerpaar ZL|ZH = Adresse
LD      TEMP,Z         ;Register TEMP = Inhalt SRAM an Adresse Speicher



erhälst du mit low(SPEICHER) das LSB (Bit 0-7) der Adresse SPEICHER und 
mit high(SPEICHER) das MSB (Bit 8-15)

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.