INFORMATICA · STRUMENTI
Calcolatrice.
Scientifica per le espressioni, da programmatore per gli interi in binario, ottale, decimale ed esadecimale, e un visualizzatore dei numeri in virgola mobile IEEE 754.
Funzioni e costanti disponibili
- Operatori
+ − × ÷ ^,n!fattoriale,x%= x/100,a mod bresto, moltiplicazione implicita:2π,3(4+1)- Trigonometria
sin cos tan asin acos atan(in gradi o radianti),sinh cosh tanh,deg(x)radianti → gradi,rad(x)gradi → radianti- Potenze e logaritmi
sqrt(x)o√(x),cbrt(x),root(x; n),exp(x),ln(x),log(x)in base 10,log(x; b),log2(x)- Interi e combinatoria
fact(n),nCr(n; k),nPr(n; k),mcd(a; b; …),mcm(a; b; …)- Arrotondamenti
abs floor ceil round trunc sign,min(…),max(…)- Costanti e numeri
πopi,e,tau,ans(ultimo risultato), notazione scientifica1,5e-3, interi0xFF,0b1010,0o17
Scegli una riga per scrivere in quella base; il prefisso 0x, 0b, 0o o 0d cambia la base di un singolo numero.
Bit del valore
Seleziona un bit per invertirlo. Il bit più a sinistra è il più significativo: con il segno vale −2n−1.
SegnoEsponenteMantissa (parte frazionaria)Seleziona un bit per invertirlo.
PER CAPIRE
Come rappresenta i numeri un computer
Basi
Lo stesso numero si scrive in basi diverse: 255 in decimale è FF in esadecimale, 377 in ottale e 1111 1111 in binario. Ogni cifra esadecimale corrisponde a 4 bit, ogni cifra ottale a 3.
Complemento a due
Con n bit con segno si rappresentano i valori da −2n−1 a 2n−1−1. Per cambiare segno si invertono tutti i bit e si aggiunge 1: −1 su 8 bit è 1111 1111. Superare l’intervallo provoca un overflow: 127 + 1 su 8 bit con segno dà −128.
Operazioni sui bit
AND spegne i bit (maschere), OR li accende, XOR li inverte dove la maschera vale 1. << n moltiplica per 2n; >> divide per 2n mantenendo il segno, >>> inserisce zeri; ROL e ROR fanno ruotare i bit che escono.
Virgola mobile
IEEE 754 memorizza (−1)segno × 1,mantissa × 2esponente − bias, con bias 127 a 32 bit e 1023 a 64 bit. Molti decimali, come 0,1, non hanno una forma binaria finita: si memorizza il valore più vicino, ed ecco perché 0,1 + 0,2 non dà esattamente 0,3.
