Arduino gcc ongelma

Äärimmäisen_kummallista

Jos kirjoitan
asm("mov r0, #1000");
niin kääntäjä toimii. Jos kirjoitan
asm("mov r0, #1001");
niin tulee ilmoitus:
Error: invalid constant (3e9) after fixup
Onko tuo ominaisuus, bugi, jäynä tai onko minulta jäänyt jotain huomaamatta?

Rekisteriin voi kyllä ladata muistista ihan minkä luvun tahansa.

2

193

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Tuskin_on_bugi

      Kannattaa kaivaa prosessorin manuaali esiin ja katsoa miten tuo vakio on koodattu mov r0, ... käskyyn. Siinä todennäköisesti on jokin bitti raja. Tuo 1000 voidaan ilmaista <= 10 bitillä:

      1000 = 250 << 2 (eli 8 -bit vakio 2 bittinen siirto vakio, esim. mov r0, 250, rol 2)
      1000 = 125 << 3 (eli 7 -bit vakio 2 bittinen siirto vakio, esim. mov r0, 125, rol 3)

      Tuota 1001 ilmaisemiseen siirtobittejä ei voi käyttää, joten vakio osan pitäisi olla 12 -bittiä. Joten todennäköisesti joku tuollainen rajoitus tulee vastaan. Eli luku 1016 on seuraava minkä voi ilmaista, (jos vakio osa 8-bittinen niin silloin 1004).

    • Atmel_AVR

      eikös arduino ole Atmel AVR -pohjainen?

      Niissä rekisteri on 8 bittiä.

      Jos kääntäjä on tehty niin, että samaa rekisteriä voi kohdella joko etumerkittömänä tai etumerkillisenä, silloin hyväksyttävä arvoalue on:

      -128 .. 255

      Mikä tahansa tuon alueen ulkopuolinen luku pitäisi aiheuttaa virheilmoitus.
      Jos kerran 1000 ei tuota virheilmoitusta, se on kääntäjän bugi.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa

      En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod
      Ikävä
      22
      5124
    2. Huomenta ihana

      Kauniskasvoinen ihanuus 😘 saan sut vielä
      Ikävä
      25
      4278
    3. Hei rakas...

      Miten on työpäivä sujunut? Rakastan sinua 💗
      Ikävä
      27
      2441
    4. Edelleen sitä on vaikea uskoa

      Että olisit oikeasti rakastunut muhun
      Ikävä
      34
      2234
    5. Toiveikas vai toivoton

      torstai? Ajatuksia?
      Ikävä
      37
      1988
    6. Vitsi mihin menit. Heti takasin.

      Mä näin sut tuu takasin! Oli kiire, niin en ehtiny sin perään!
      Ikävä
      15
      1908
    7. En ole koskaan kokenut

      Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka
      Ikävä
      19
      1587
    8. Mukavaa päivää

      Mun rakkauden kohteelle ❤️ toivottavasti olet onnellinen
      Ikävä
      12
      1521
    9. Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...

      Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons
      Suomalaiset julkkikset
      21
      1237
    10. Kerranki asiat oikein

      Ilkka ja muut pienpuolueeet...teitte hyvän työn kun valitsitte pätevän henkilön virkaan eikä kepulle passelia!! Jatkakaa
      Haapavesi
      10
      1164
    Aihe