www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

[SOLVED] assembly ukaz MSR

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
71GA
Član
Član



Pridružen-a: Tor 16 Jun 2009 18:53
Prispevkov: 391
Aktiv.: 2.00
Kraj: Ljubljana

PrispevekObjavljeno: Pon Feb 21, 2011 12:29 am    Naslov sporočila:  [SOLVED] assembly ukaz MSR Odgovori s citatom

Živijo!

MSR ukaz poznam v obliki npr. msr cpsr_cfxs, r0, kjer vsebino registra r0 skopiramo v cpsr v katerem updatamo polja control, flags, execute in status. V startup kodi sem naletel na msr, ki je zapisan malo drugače in namreč:
Koda:
msr   CPSR_c,#MODE_UND|I_BIT|F_BIT

V tem ukazu mi del za vejico ni več jasen, še posebej mi ni jasna uporaba simbola |. Vse uporabljeno v ukazu je že definirano zgoraj v programu in vem kaj pomeni, definirano pa je takole:
Koda:

// Standard definitions of Mode bits and Interrupt (I & F) flags in cpsr, spsr

        .set  MODE_USR, 0x10            // User Mode

        .set  MODE_FIQ, 0x11            // FIQ Mode

        .set  MODE_IRQ, 0x12            // IRQ Mode

        .set  MODE_SVC, 0x13            // Supervisor Mode

        .set  MODE_ABT, 0x17            // Abort Mode

        .set  MODE_UND, 0x1B            // Undefined Mode

        .set  MODE_SYS, 0x1F            // System Mode



        .equ  I_BIT, 0x80               // when I bit is set, IRQ is disabled

        .equ  F_BIT, 0x40               // when F bit is set, FIQ is disabled

V kolikor bi mi kdo malo obrazložil tole bi bilo super Smile Hvala!


Nazadnje urejal/a 71GA Pon Feb 21, 2011 2:39 am; skupaj popravljeno 1 krat
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
.
Član
Član



Pridružen-a: Pon 23 Avg 2004 16:16
Prispevkov: 16777190
Aktiv.: 70646.98

PrispevekObjavljeno: Pon Feb 21, 2011 1:59 am    Naslov sporočila:   Odgovori s citatom

Brisana vsebina odstranjenega uporabnika.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
71GA
Član
Član



Pridružen-a: Tor 16 Jun 2009 18:53
Prispevkov: 391
Aktiv.: 2.00
Kraj: Ljubljana

PrispevekObjavljeno: Pon Feb 21, 2011 2:37 am    Naslov sporočila:   Odgovori s citatom

Toda iz tvojega posta bi prej sklepal, da | pomeni seštevanje in ne OR. Se mi pa zdi, da sedaj razumem.

Hvala.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 7 dni


Powered by phpBB © 2001, 2005 phpBB Group