You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Etumerkittömät kokonaisluvut

Bittijono voidaan ymmärtää positiiviseksi kokonaisluvuksi:

    kahdeksan bitin tavu voi tällöin sisältää arvot 0 - 255 = 00000000...11111111b = 0377 = 0xff.
    
    16-bittinen luku voi sisältää arvot 0 - 65 535 = 00000000 00000000 ... 11111111 11111111 =
                                                   = 0 ... 0177777 = 0 ... 0xffff.
    
    32-bittinen luku voi sisältää arvot 0 - 4 294 967 295 = 0.... 037777777777 = 0... 0xffffffff

Mutta yleensä tarvitsemme myös negatiivisia lukuja, jolloin tarvitsemme kahden komplementtiesitystä

    kahdeksan bitin tavu voi tällöin sisältää arvot -128 - 0 -  127= 10000000 - 00000000 - 01111111 = -0200 - 0 0177 = -0x80 - 0 - 0x7f
      .
    16-bittinen luku voi sisältää arvot 32768 - 0 - 32767 .

    32-bittiseen kaksoissanaan mahtuu luku 2147483648 - 2147483647.

HUOM! jos luvun ensimmäinen numero on nolla (0) , ymmärretään se C-ohjelmassa oktaaliluvuksi ja jos luvun kaksi ensimmäistä merkkiä ovat 0x, ymmärretään luku heksadesimaaliluvuksi. Binäärilukua ei voi suoraan kirjoittaa muuttujan arvoksi, vaan se pitää esittää joko oktaali- tai heksalukuna.

C-ohjelmassa luku

  • No labels
You must log in to comment.