Terve!
Mitäköhän tuo L mahtaa tuolla hex arvon perässä toimittaa? esim: 0xYYYYYYYYL
Mitäköhän tuo L mahtaa tuolla hex arvon perässä toimittaa? esim: 0xYYYYYYYYL
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 4
Vanhimmat
heksadesimaaliluku
0x osoittaa että kyseessä on hexadecimaalinen luku. Hexadecimaalisessa järjestelmässä on kanta 16 (kymmenjärjestelmässä on kanta 10). Koska ei ole olemassa symboleja luvuille 10,11,12,13,14,15 on ne korvattu kirjaimilla A,B,C,D,E,F. 0XC tarkoittaa siis 12.
Mitään sellaista symbolia kuin Y tai L ei voi esiintyä hex-luvussa.
Tietokoneen raudan rekisteripituus tai ohjelman muuttujatyyppi (8, 16, 32, 64, 128...bittiä) ei mitenkään vaikuta hexluvun esitysmuotoon, se määrää ainoastaan suurimman arvon mitä muuttuja tai rekisteri voi pitää sisäällään (esim 8-bittisessä prosessorissa (kyllä, niitä on ja niitä käytetään paljon ns mikrokontrollereissa alhaisen virrankulutuksen takia) suurin arvo binäri 1111 1111 (kaikki kahdeksan rekisteribitit ylhäällä) vastaa hex 0xFF eli desimali 255).
32 bittisessa koneeessa (tai muuttujassa) se on 0xFFFF FFFF, eli vähän päälle neljä miljardia. Esim liikeelämässä missä laskelmat pitää täsmätä sentin tarkuudella, suurin rahamäärä mitä pystyisi esittää olisi n. 40 milj €. Tällä ei pitkälle pötkitä. Siksi pankit ym. käyttävät BCD-nimistä muuttujatyyppiä (Binary Coded Decimal) jolla voidaan esittää miten suuria kokonaislukuja tahansa (ilman että menetetään tarkuutta laskelmissa kuten tapahtuisi jos käyttäisi liukulukuja). Mutta tämä on sitten toinen asia.
Mutta kuten sanoin: 0xYYYYYL ei tarkoita yhtään mitään (paitsi Compiler error: Undefined symbol).
Pahoittelen tuota ilmaisua 0xYYYYYYYYL -> siis tuo Y:n oli esimerkissä niinkuin jokin validi hex kantaluku x...
"Long":n se viimeinen L tarkoitti, mutta en ymmärrä miksi sitä pitäisi käyttää jossain tapauksessa hex- arvon perässä?
jääkööt tuo arvoitukseksi, pätkä jota käänsin toiselle kielelle on jo hoidettu, joten kiitos teille!
C
2 - Lexical conventions
2.13 - Literals
2.13.1 - Integer literals
integer-literal:
decimal-literal integer-suffixopt
octal-literal integer-suffixopt
hexadecimal-literal integer-suffixopt
decimal-literal:
nonzero-digit
decimal-literal digit
octal-literal:
0
octal-literal octal-digit
hexadecimal-literal:
0x hexadecimal-digit
0X hexadecimal-digit
hexadecimal-literal hexadecimal-digit
nonzero-digit: one of
1 2 3 4 5 6 7 8 9
octal-digit: one of
0 1 2 3 4 5 6 7
hexadecimal-digit: one of
0 1 2 3 4 5 6 7 8 9
a b c d e f
A B C D E F
integer-suffix:
unsigned-suffix long-suffixopt
long-suffix unsigned-suffixopt
unsigned-suffix: one of
u U
long-suffix: one of
l L