Hirdetés

Új hozzászólás Aktív témák

  • Aryes

    nagyúr

    válasz gyapo11 #15165 üzenetére

    Ezen alapul az én javaslatom is, de ehhez elég egyetlen bit is. Ha például csak pozitív egész számokat szeretne kiírni, akkor a legfelső bit lesz a marker. Bekapcsolás után végig kell olvasni az adatokat. Ha az első adat negatív (magas marker bit), megkeresem az első olyan adatot, ami pozitív (alacsony marker bit), és azt írom felül. Ha az egész EEPROM végig csak pozitív, akkor kezdem elölről, negatív számmal. Első használatnál, feltételezve, hogy csupa 0 van az EEPROM-ban, az első kiírt adat negatív szám lesz. Ha megtelt, akkor jönnek a pozitív számok. Nem tudom mennyire sikerült érthetően leírnom.
    A pozitív-negatív átváltás persze nem közvetlenül értendő, mivel a 0-nak nincs negatív alakja, ezért egy 0 elrontaná az egész rendszert. Emiatt kettes komplemens helyett egyes komplemens alakot kell használni, vagy csak egyszerűen állítgatni a legfelső bitet.

    Ha több adatot kell kiirni, akkor adatblokkokban kell gondolkodni, egy blokk több változót fog tartalmazni, a marker a blokk legelső byte-jának legfelső bitje, ha megoldható, hogy olyan adat kerüljön oda, aminek az értéke sosem haladja meg a 127-et. Ha ez nem megoldható, akkor egy byte-ot fel kell áldozni markernek.

Új hozzászólás Aktív témák