2010-04-09 14 views
30

Ho visto binari e hex usati abbastanza spesso ma mai ottali. Tuttavia ottale ha la propria convenzione per essere usato in alcune lingue (cioè uno 0 iniziale che indica la base ottale). Quando si usa l'ottale? Quali sono le situazioni tipiche in cui si potrebbe usare l'ottale o l'ottale? O è solo una questione di gusti?In quali situazioni viene utilizzata la base ottale?

risposta

19

ottale è usato come una scorciatoia per rappresentare i permessi dei file su sistemi UNIX. Ad esempio, la modalità file rwxr-xr-x sarebbe 0755.

+2

Ma poiché i valori vanno solo da 0 a 7, non è tecnicamente uguale a Decimale o Esadecimale? –

+1

No, perché in decimale avresti anche 8 e 9 e così via. –

+4

@Neil no, perché quelli darebbero valori numerici diversi - '0x755' è' 011101010101' in binario, mentre '0755' è' 111101101'. Il primo, quindi, significherebbe qualcosa di completamente diverso nelle autorizzazioni di file unix. – SamB

6

Ottale viene utilizzato quando la sintassi è una reliquia dei secoli in cui forse aveva senso su alcune piattaforme (le parole di sistema non sono sempre state un multiplo di 8 bit). Al giorno d'oggi esagono è la cosa da usare.

40

Ottale viene utilizzato quando il numero di bit in una parola è un multiplo di 3. Esempi sono sistemi antichi con dimensioni di parola a 18 bit, sistemi con byte a 9 bit o autorizzazioni di file unix con 9 bit o 12 bit.

Se il numero di bit nella tua parola è un multiplo di 4, tuttavia, utilizza esadecimale, con tutti i mezzi.

+2

+1 per fornire la risposta migliore (IMHO) finora. – stakx

+0

Concordato, fornisce una spiegazione e un confronto migliori con un'altra base (hex) – AlexanderGriffin

4

Uno dei motivi principali per cui più spesso si usava octal era il fatto che è più facile convertire tra ottale e binario nella testa che esadecimale in binario: basta ricordare la rappresentazione binaria delle 8 cifre ottali (0 -7).

Indietro nei giorni in cui il debugging richiedeva la lettura del contenuto del registro da una fila di LED o l'inserimento di dati con una serie di interruttori a levetta, ciò costituiva una grande preoccupazione. I pannelli su molti di questi primi computer raggruppavano i LED e gli interruttori in gruppi di tre per facilitare questo.

Tuttavia, hex ha iniziato a vincere in quanto le dimensioni delle parole che sono multipli di byte a 8 bit hanno iniziato a vincere, e la necessità di leggere e immettere dati in binario è diventata non necessaria (con interfaccia utente di testo console e successivi GUI di debugger).

0

FYI, ci sono alcuni posti in cui windows e javascript decidono automaticamente che un numero preceduto da zero è ottale e converte il numero.

in Windows Se si esegue il ping e affrontare come 10.0.2.010 sarà effettivamente ping 10.0.2.8

di Windows fa anche questo se si immette come l'/ indirizzo DNS IP del computer

Anche se è deprecato, Javascript lo fa per impostazione predefinita su alcune funzioni come parseInt se non si specifica una radice http://www.w3schools.com/jsref/jsref_parseint.asp

+0

Tutto ciò che utilizza Windows Sockets ['inet_addr()'] (http://msdn.microsoft.com/en-us/library/ms738563%28v=VS .85% 29.aspx) mostrerà questo comportamento documentato. –

+0

Anche Perl, a quanto pare. – ruffin

1

Musica, a patto che si stia lontano da (la maggior parte) diesis e bemolle.

+0

.... Cosa? Una ottava "tradizionale" (cioè al piano) ha 12 suoni. 12. Non 7. E non è possibile evitare taglienti e vuoti in qualcosa anche solo lontanamente serio. – SigTerm

+1

Ci sono 12 note sulla scala cromatica, ma solo 7 sulla scala diatonica. Le note musicali sono etichettate secondo la scala diatonica, A-G, che è un sistema di numerazione ottale. Anche la Solfège percorre la scala diatonica. È vero, gli altri 5 semitoni in mezzo richiedono segni aggiuntivi da rappresentare, ma l'OP ha chiesto di * utilizzare * la numerazione ottale, NON la teoria dell'informazione, dove ovviamente la musica dovrebbe richiedere più di 3 bit per nota. – richardtallent

3

In avionica, le etichette di parole ARINC 429 sono quasi sempre espresse in ottale.

2

Se gli uccelli potessero contare, la mia ipotesi sarebbe che usassero l'ottale. Mentre la maggior parte degli uccelli ha 3 cifre sulle loro "mani" piumate, la maggior parte sono Tetradactyly, che significa 4 dita su ogni piede.

+2

Oh e Topolino, anche ;-) –

Problemi correlati