Autor Thema: CMOS 2006->06  (Gelesen 3777 mal)

thetrue

  • Beiträge: 216
    • Profil anzeigen
    • http://www.the-true.net
Gespeichert
« am: 13. August 2006, 00:28 »
öhm,

ich bin entweder zu müde oder zu blöd ^^

also ich habe das Jahr in einer Variable abespeichert, ist 2006 ;) RTC halt.

so, aber wie kann ich nun mit ASM das in 96 umwandeln?

oder wenn es 2089 ist dann soll halt 89 raus kommen ... oder wie siehts dann halt aus??? gibts ne Formel für?

//::EDIT::\\ ich sehe gerade beim dump, dass CMOS als jahr 0x6 returned ...

ok, dann wie mache ich aus 06->2006 ??? ^^
thetrue way is my way

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #1 am: 13. August 2006, 01:23 »
Zitat von: thetrue
oder wenn es 2089 ist dann soll halt 89 raus kommen ... oder wie siehts dann halt aus??? gibts ne Formel für?


falls das Jahr im dezimalformat vorliegt (im bcd format geht das nicht [siehe unten]):
2089 mod 100 = 89

Zitat von: thetrue
ich sehe gerade beim dump, dass CMOS als jahr 0x6 returned ...

Was meinst du wieviel in ein Byte passt? Gut wenn DU es wiedermal Huffmann-codieren willst vielleicht noch weniger, aber ansonsten 8bit = max 256. :wink:
So, das Jahr wird im CMOS zum einen im Byte 0x09 und das Jahrhunder in 0x32 gespeichert. Beides ist aber im BCD (binary coded decimal) Format (wenn im Statusregister B das 2te bit gelöscht ist), d.h. du musst erstmal beides seperat in normale dezimalzahlen umwandeln. Anschließend dann noch sinnvoll addieren (Jhd * 100 + Jahr), dann haste es als Dezimalzahl.
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

thetrue

  • Beiträge: 216
    • Profil anzeigen
    • http://www.the-true.net
Gespeichert
« Antwort #2 am: 13. August 2006, 11:55 »
öhm ich habe noch net mal ganz mit c++ huffman codeirung geshaft ^^

kommen immer falsche Codes raus ^^, naja muss mal später nochmal gucken
thetrue way is my way

 

Einloggen