LA CAMPANA

C'è chi legge questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam

Tema 1. Principi dell'organizzazione informatica

Codifica informatica delle informazioni.

Coding   ha chiamato la rappresentazione dei simboli di un alfabeto per mezzo di un altro alfabeto.

Viene chiamato un valore in grado di assumere solo due valori diversi po.

Come rappresentare i caratteri di un altro alfabeto usando l'alfabeto binario?

Per codificare alfabeti contenenti più di 2 caratteri, vengono utilizzate sequenze di caratteri binari. Ad esempio, una sequenza di due caratteri binari può codificare 4 caratteri di un altro alfabeto:

00 -\u003e A 01 à B 10 à C 11 à D.

Si può dimostrare che il numero di possibili combinazioni quando si usa l'alfabeto binario è 2 n,dove n è il numero di caratteri binari nella sequenza. Quando n è 8, il numero di possibili combinazioni è 256, il che è abbastanza sufficiente per codificare gli alfabeti più noti; pertanto, una sequenza di otto simboli binari è ampiamente utilizzata per codificare le informazioni nei computer. Di solito viene chiamata una sequenza di otto cifre binarie byte.

Esempio di codifica:

carattere A à 1100 0001 carattere 9 à 1111 1001.

Attualmente, per codificare i caratteri vengono utilizzate anche sequenze di 16 caratteri binari (2 byte).

Il supporto tecnico di informazioni in un computer è una cella di memoria, costituita da un insieme di elementi semplici, ognuno dei quali può trovarsi in uno dei due stati possibili (indicato come 0 e 1). Una cella di memoria può contenere un numero diverso di elementi semplici. In genere, il numero di elementi in una cella è un multiplo di 8.

Le unità più grandi vengono anche utilizzate per misurare la memoria:

1 kilobyte (kb) \u003d 2 10 byte \u003d 1024 byte;

1 megabyte (MB) \u003d 2 20 byte \u003d 1048576 byte;

1 gigabyte (GB) \u003d 2 30 byte \u003d

Il codice macchina (o semplicemente il codice) è la combinazione di 0 e 1 che una cella di memoria può memorizzare.

Un codice a 2 byte è chiamato mezza parola,

un codice a 4 byte è chiamato una parola,

il codice a 8 byte è chiamato doppia parola.

Architettura del computer

In ogni momento, l'uomo ha cercato di espandere le sue capacità creando vari dispositivi (strumenti, conoscenza del mondo). Ad esempio, ha compensato la disabilità visiva con un microscopio e un telescopio. La capacità limitata di scambiarsi informazioni si espande utilizzando un telefono radio e televisivo.

Le macchine informatiche (computer) "completano" la capacità del cervello umano di elaborare le informazioni e consentono di aumentare la velocità dell'informatica, e quindi il processo decisionale nel corso di vari lavori, centinaia e migliaia di volte.

Una persona ha sempre avuto a che fare con i calcoli, quindi le persone hanno cercato di espandere le proprie capacità nell'elaborazione delle informazioni, specialmente nel campo dell'informatica. A tal fine, sono stati inventati punteggi, un aritmometro, ecc. Tuttavia, tutti questi dispositivi non consentivano l'automazione dei calcoli.

L'idea di utilizzare il controllo del programma per costruire un dispositivo di calcolo automatico fu inizialmente espressa dal matematico inglese Charles Babbage nel 1833. Tuttavia, il basso livello di sviluppo della scienza e della tecnologia non consentì la creazione di un dispositivo di calcolo automatico in quel momento. L'idea di gestione del programma è stata ulteriormente sviluppata nelle opere dello scienziato americano John von Neumann.

Negli anni '40 del 20 ° secolo, opera nel campo della fisica nucleare, balistica, aerodinamica, ecc. richiedeva un enorme lavoro computazionale. La scienza e la tecnologia si sono confrontate con un dilemma: o tutti dovrebbero sedersi agli aritmometri o creare un nuovo strumento automatico efficace per i calcoli. Proprio in quel momento, J. Von Neumann ha formulato i principi di base per la costruzione di un computer. Di conseguenza, il primo computer fu costruito nel 1945 e nel 1953 iniziò la produzione seriale di computer.

L'architettura del computer proposta da Neumann è mostrata in Fig. 1.1.1. Il computer contiene:

Dispositivi di input   (ad esempio una tastiera) per l'immissione di programmi e dati in un computer;

- Dispositivi di uscita   (ad esempio un monitor, una stampante, ecc.) per la trasmissione di dati da un computer;

- memoria   - un dispositivo per la memorizzazione di informazioni. La memoria può essere costruita su vari principi fisici, ma in ogni caso è una raccolta di celle in cui vari dati (numeri, simboli) possono essere memorizzati in forma codificata. Tutte le posizioni di memoria sono numerate. Il numero di memoria è chiamato indirizzo.

- processore - un dispositivo in grado di eseguire una determinata serie di operazioni sui dati e generare valori di una determinata serie di condizioni logiche su questi dati. Il processore è costituito da un dispositivo di controllo (UE) e un dispositivo logico aritmetico (ALU).

UU è progettata per eseguire comandi e controllare il funzionamento del computer quando si esegue un comando separato.

ALU è progettato per eseguire operazioni aritmetiche e logiche, il cui insieme è determinato dal sistema di comando adottato per questo tipo di computer.

Programma   - Questo è un algoritmo per risolvere il problema, presentato sotto forma di un computer comprensibile.

Il computer si basa su due principi fondamentali di J. von Neumann.

1 Principio di un programma memorizzato. Secondo questo principio, un programma codificato in forma digitale viene archiviato in una memoria del computer insieme a numeri (dati). Nei comandi sono indicati non i numeri stessi coinvolti nelle operazioni, ma gli indirizzi delle celle di memoria in cui si trovano.

Esempio di comando

  KO   A1   A2   A3

dove KO - codice operativo; A1 è l'indirizzo del primo operando; A2 è l'indirizzo del secondo operando; A3: l'indirizzo della cella di memoria in cui si desidera inserire il risultato. KO, A1, A2, A3 sono sequenze di zeri e uno. per esempio

A1: 00011110 ....... 110001 (32 bit).

Se QoS è il codice dell'operazione di addizione, il significato di questo comando può essere formulato come segue:

Prendi questo dalla cella con l'indirizzo A1;

Prendi questo dalla cella con l'indirizzo A2;

Eseguire l'operazione di aggiunta di questi dati;

Inserisci il risultato nella cella con l'indirizzo A3.

Si noti che i comandi non indicano i dati in elaborazione, ma gli indirizzi delle celle di memoria. Tutto ciò rende il computer uno strumento universale per l'elaborazione delle informazioni. Per risolvere un altro problema, non è necessario cambiare l'attrezzatura. È sufficiente inserire un altro programma e dati in memoria.

2. Il principio dell'accesso casuale alla memoria principale. Secondo questo principio, qualsiasi cella di memoria è disponibile per il processore in qualsiasi momento.

Il principio di funzionamento del computer

In conformità con questi principi, un computer risolve il problema come segue.

1. Il programma sotto forma di una sequenza di comandi in forma codificata (programma macchina) si trova nella memoria del computer.

2. Tutti i dati utilizzati dal programma sono anche memorizzati.

3. Il processore legge il comando successivo dalla memoria, la UE lo decodifica e determina chi dovrebbe eseguirlo (air-blast, ALU,). Se si tratta di un comando di tipo aritmetico, il controllo viene trasferito all'ALU, che determina quale operazione e quali dati devono essere eseguiti. Quindi, l'ALU estrae i valori dei dati dalla memoria ed esegue l'operazione indicata Dopo che il risultato è stato trasferito nella memoria, l'ALU informa l'UU che è possibile eseguire il comando seguente.

Quasi tutti i computer attualmente prodotti hanno un'architettura Neumann (la struttura dei computer può essere diversa).

Presentazione dei dati in un computer.

Viene chiamato il codice macchina delle informazioni elaborate (dati) operando.Secondo il contenuto semantico, gli operandi sono divisi in simbolici e numerici.

Operandi di personaggi.

Gli operandi di caratteri sono sequenze di caratteri dell'alfabeto originale (lettere, numeri, segni). Per memorizzare ogni carattere, viene allocata una cella di memoria da 1 byte, in cui viene inserito il codice carattere.

Ad esempio, A (rus): 11100001: A (lat) 01000001.

Dati numerici.

Fonti e portatori di informazioni sono segnali di qualsiasi natura: testo, parola, musica, ecc. Allo stesso tempo, l'archiviazione e l'elaborazione delle informazioni nella sua forma naturale è scomoda e talvolta impossibile. In tali casi, viene utilizzata la codifica. Il codice è la regola con cui vengono confrontati vari alfabeti e parole ( apparvero nei tempi antichi sotto forma di crittografia, quando venivano usati per classificare messaggi importanti). Storicamente, il primo codice universale per l'invio di messaggi è associato al nome dell'inventore dell'apparato telegrafico Morse ed è noto come codice Morse, dove ogni lettera o numero ha una propria sequenza di breve termine, chiamata punti e lungo termine - un trattino di segnali separati da pause.

Il computer, come sapete, può elaborare le informazioni presentate in forma numerica. Esistono vari modi per scrivere numeri. L'insieme di tecniche per la registrazione e la denominazione dei numeri è chiamato sistema dei numeri. È possibile specificare due classi base in cui i sistemi numerici sono divisi: posizionale   e non posizionale. Un esempio di un sistema numerico posizionale è il decimale, non posizionale - il sistema numerico romano.

Nei sistemi non posizionali, il valore quantitativo di una scarica è determinato solo dalla sua immagine e non dipende dalla sua posizione ( posizione) nell'elenco. Presenta una serie di caratteri per rappresentare i numeri di base e i numeri rimanenti sono il risultato della loro aggiunta e sottrazione. Simboli di base per le cifre decimali nel sistema numerico romano: io   - uno, X   - dieci, C   - centinaio, M   - mille e mezzo V   - cinque, L   - cinquanta, D   - cinquecento. I numeri naturali vengono scritti ripetendo questi numeri ( per esempio, II - due, III - tre, XXX - trenta, CC - duecento) Se la cifra più grande è prima della cifra più piccola, si sommano, se al contrario vengono sottratte ( per esempio, VII - sette, IX - nove) Nei sistemi numerici non posizionali, i numeri frazionari e negativi non sono rappresentati, quindi saremo interessati solo ai sistemi numerici posizionali.

Il sistema numerico è generalmente chiamato posizionale se il valore del numero in esso è determinato sia dai simboli adottati nel sistema sia dalla posizione ( posizione) di questi caratteri in numero. Per esempio:

123,45 = 1∙10 2 + 2∙10 1 + 3∙10 0 + 4∙10 –1 + 5∙10 –2 ,

o, in termini generali:

X (q) \u003d xn -1 qn -1 + xn -2 qn -2 + ... + x 1 q 1 + x 0 q 0 + x -1 q -1 + x -2 q -2 + ... + x -mq -M.

Qui X   (q) - registra il numero nel sistema numerico con la base q;

x   I - numeri naturali inferiori a q, ᴛ.ᴇ. numeri;

n   - il numero di cifre della parte intera;

m   - il numero di bit della parte frazionaria.

Scrivendo i numeri da sinistra a destra, otteniamo un record codificato del numero in q-sistema numerico.

X (q) \u003d x n-1 x n-2 x

1 x 0, x -1 x -2 x -m.

Nell'informatica, grazie all'uso della tecnologia informatica elettronica, il sistema di numeri binari è di grande importanza, q\u003d 2. Nelle prime fasi dello sviluppo della tecnologia informatica, le operazioni aritmetiche con numeri reali sono state eseguite in un sistema binario a causa della semplicità della loro implementazione nei circuiti elettronici dei computer. Si noti che il principio di funzionamento degli elementi di base dei computer digitali si basa su due stati stabili: se viene condotta o meno una corrente elettrica o in quale direzione viene magnetizzato il vettore magnetico, ecc. e per scrivere un numero binario, è sufficiente usare solo due cifre 0 e 1, corrispondenti a ciascuno degli stati. La tabella di addizione e la tabella di moltiplicazione nel sistema binario avranno quattro regole ciascuna. E per implementare l'aritmetica bit a bit in un computer, anziché due tabelle, sono necessarie cento regole in un sistema decimale, due tabelle con quattro regole in binario.

0 + 0 = 0 0 * 0 = 0
0 + 1 = 1 0 * 1 = 0
1 + 0 = 1 1 * 0 = 0
1 + 1 = 10 1 * 1 = 1

Di conseguenza, a livello hardware, anziché duecento circuiti elettronici, otto. In questo caso, scrivere un numero nel sistema binario è molto più lungo che scrivere lo stesso numero nel sistema decimale. Questo è ingombrante e scomodo da usare, poiché di solito una persona può percepire allo stesso tempo non più di 5-7 unità di informazioni. Per questo motivo, insieme al sistema di numeri binari, in informatica, ottale ( in esso il record del numero è tre volte più breve rispetto al sistema di numeri binari) e notazione esadecimale ( il numero è quattro volte più breve rispetto al binario).

Poiché il sistema decimale è conveniente e familiare per noi, facciamo tutte le operazioni aritmetiche al suo interno e la conversione di numeri da un non decimale arbitrario (q ≠ 10) basato sull'espansione in gradi q. La conversione da decimali ad altri sistemi numerici viene effettuata utilizzando le regole di moltiplicazione e divisione. In questo caso, le parti intere e frazionarie vengono tradotte separatamente.

Sistema numerico a 2 cifre ALFAVIT: 0 1

Sistema numerico 8 decimali ALFAVIT: 0 1 2 3 4 5 6 7

ALFAVIT del decimo sistema numerico: 0 1 2 3 4 5 6 7 8 9

Sistema numerico esadecimale ALFAVIT: 0 1 2 3 4 5 6 7 8 9 A B C D E F

Per tradurre un numero da decimalesistemi numerici in qualsiasi altro sistema numerico che è necessario dividere "fino all'arresto" questo numero sulla base di tale sistema ( base del sistema - - numero di caratteri nel suo alfabeto), in cui traduciamo il numero, quindi leggiamo i resti da destra a sinistra. Per tradurre un numero da qualunque   sistemi decimali, è necessario moltiplicare il contenuto di ciascuna cifra per la base del sistema in misura pari al numero ordinale della cifra e sommare. Traduzione di un numero da ottale   il sistema binario viene effettuato sostituendo la cifra ottale da sinistra a destra con tre cifre binarie. Traduzione di un numero da binario   il sistema di numeri ottali viene eseguito sostituendo ciascuna triade di cifre binarie con una cifra ottale da destra a sinistra.

Per tradurre un numero da sistema decimale   numerazione in qualsiasi altro sistema di numerazione, è possibile utilizzare il programma standard Calcolatrice.

Comporre un numero e fare clic su uno degli interruttori Esadecimale, dicembre, ottobre   o Bidone, otteniamo una rappresentazione di questo numero nel sistema corrispondente.

Come notato, il sistema di numeri binari, essendo naturale per i computer, non è conveniente per la percezione umana. Un gran numero di bit di un numero binario rispetto al decimale corrispondente, l'alternanza uniforme di uno e zeri è fonte di errori e difficoltà nella lettura del numero binario. Per comodità di scrivere e leggere numeri binari ( ma non per i computer digitali!), è necessario un sistema numerico più conveniente per la scrittura e la lettura. Tali sono i sistemi con la base 2 3 \u003d 8 e 2 4 \u003d 16, ᴛ.ᴇ. notazione ottale ed esadecimale. Questi sistemi sono convenienti in quanto, da un lato, forniscono una traduzione estremamente semplice dal sistema binario ( così come la traduzione inversa), perché la base del sistema è la potenza del numero 2, d'altra parte, viene conservata una forma compatta del numero. Il sistema ottale è stato ampiamente utilizzato per registrare programmi macchina in computer di 1 e 2 generazioni. Attualmente utilizzato principalmente

sistema esadecimale. Diamo un esempio della corrispondenza dei sistemi esadecimali e binari:

Esempio per taccuino:

0000 \u003d 0; 0001 \u003d 1; 0010 \u003d 2; 0011 \u003d 3; 0100 \u003d 4; 0101 \u003d 5; 0110 \u003d 6; 0111 \u003d 7; 1000 \u003d 8; 1001 \u003d 9; 1010 \u003d A; 1011 \u003d B; 1100 \u003d C; 1101 \u003d D; 1110 \u003d E; 1111 \u003d F.

Un computer utilizza la presentazione di informazioni sotto forma di "parola macchina", la cui lunghezza è uguale a un certo numero di bit caratteristici di un determinato tipo di computer. I computer di prima generazione utilizzavano parole chiave di varie lunghezze, ad esempio 45 bit, ecc., Cioè non uguale a un numero intero di byte. Nei computer moderni, la lunghezza della parola è generalmente di 4 o 8 byte ( i primi modelli di personal computer avevano 1 o 2 byte).

Una parola nella memoria del computer

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

5.1 Problemi di presentazione dei dati

La rappresentazione fisica dei numeri richiede elementi in grado di trovarsi in uno dei numerosi stati stabili.

Se si sceglie un sistema di numeri decimali per costruire un computer, allora dovrebbero esserci dieci di questi stati. Per il sistema dei numeri ottali di tali stati dovrebbe essere 8, per esadecimali - 16, ecc. Il numero di stati dovrebbe essere sempre uguale alla base del sistema di numeri.

Naturalmente, un tale numero di stati causa difficoltà nella loro attuazione.

A metà degli anni Quaranta del secolo scorso, un gruppo di matematici, tra cui von Neumann, propose di utilizzare un sistema di numeri binari per rappresentare le informazioni nei computer.

Per un sistema di numeri binari di stati stabili dovrebbero essercene due (in termini approssimativi - l'interruttore è acceso (questo stato logicamente corrisponde a 1) e l'interruttore è spento (questo stato logicamente corrisponde a 0).

È ovvio che i più semplici dal punto di vista della realizzazione tecnica sono i cosiddetti elementi on-off che possono trovarsi in uno dei due stati stabili, ad esempio: un relè elettromagnetico è chiuso o aperto, una superficie ferromagnetica è magnetizzata o smagnetizzata, ecc.

La semplicità dell'implementazione tecnica degli elementi on-off ha assicurato l'uso più diffuso del sistema di numeri binari nei computer.

Inoltre, l'informatica utilizza anche i sistemi numerici ottali ed esadecimali. Le basi di questi sistemi corrispondono a potenze intere pari a 2, quindi le regole per la conversione in un sistema di numeri binari e viceversa sono estremamente semplici per loro.

Qualsiasi informazione viene inviata al computer sotto forma di codici binari. I singoli elementi di un codice binario che assumono un valore di 0 o 1 sono chiamati bit o bit.

n

Memorizza la macchina a blocchi di informazioni chiamata memoria. Convenzionalmente, il blocco di memoria è rappresentato come un rettangolo. La memoria è divisa in byte. La più piccola unità indivisibile di informazioni a cui è possibile assegnare un indirizzo è byte (nei computer moderni, 8 byte sono assegnati per byte). I numeri iniziano da zero e terminano con un numero "n". Il valore di n dipende dal tipo di computer.

La memoria memorizza:

n dati (la cosiddetta area dati)

n programmi (area del programma)

n informazioni di servizio (si chiama informazioni di sistema e l'area è anche chiamata informazioni di sistema, ci sono due di queste aree in memoria).

La memoria "inizia" con l'area di sistema e "termina" con l'area di sistema.

Quindi, la memoria è divisa in celle (griglie di bit) a cui è possibile accedere ai loro indirizzi.

Ogni byte di memoria è diviso in bit o bit.

Condizionalmente, una griglia di bit può essere rappresentata come un rettangolo stretto con divisioni per bit (bit).

M

Griglia bit

Ogni bit (bit) corrisponde a un elemento fisico. Logicamente questo è 1 o 0.

La rappresentazione delle informazioni numeriche nella memoria del computer è indissolubilmente legata a un tale concetto di moderni linguaggi orientati al problema come il tipo di dati. I linguaggi moderni monitorano rigorosamente il tipo di variabili utilizzate nel programma. Il tipo di una variabile determina la possibile serie di valori di questa variabile, la dimensione della sua rappresentazione interna e la serie di operazioni che possono essere eseguite sulla variabile. Per i valori numerici, il punto essenziale è l'intervallo di valori accettabili.

Il concetto tipo di dati è di natura doppia. In termini di dimensionalità, il microprocessore supporta i seguenti tipi di dati di base nell'hardware:

Byte - otto bit consecutivi numerati da 0 a 7, mentre il bit 0 è il bit meno significativo.

Doppio byte (parola   in architettura 16/32 bit) - una sequenza di due byte con indirizzi consecutivi. La dimensione della parola è di 16 bit; i bit in una parola sono numerati da 0 a 15. Viene chiamato un byte contenente un bit zero byte bassoe il byte contenente il 15 bit è byte alto.I microprocessori Intel hanno una caratteristica importante: il byte basso viene sempre memorizzato a un indirizzo inferiore. Indirizzo a doppio byteviene considerato l'indirizzo del suo byte meno significativo. L'indirizzo byte alto può essere utilizzato per accedere alla metà superiore del doppio byte.

Half-word - una sequenza di quattro byte (32 bit) posizionati su indirizzi consecutivi. Questi bit sono numerati da 0 a 31. Viene chiamato un doppio byte contenente un bit zero doppio byte bassoe il doppio byte contenente il 31st bit è doppio byte alto.Il doppio byte inferiore viene memorizzato in un indirizzo inferiore. Indirizzo di mezza parolaviene considerato l'indirizzo del suo byte meno significativo. L'indirizzo del doppio byte alto può essere utilizzato per accedere alla metà superiore della parola.

parola (un tipo la cui profondità di bit corrisponde al bit di architettura) - una sequenza di otto byte con indirizzi consecutivi. La dimensione della parola è 64 bit; i bit nella parola sono numerati da 0 a 63. Viene chiamata una mezza parola contenente zero bit mezza parola più giovanee mezza parola, contenente il 63esimo bit - mezza parola senior.I microprocessori Intel hanno una caratteristica importante: la mezza parola più giovane viene sempre memorizzata a un indirizzo inferiore. Indirizzo wordviene considerato l'indirizzo del suo byte meno significativo. L'indirizzo della mezza parola alta può essere utilizzato per accedere alla metà superiore della parola.

Doppia parola - una sequenza di sedici byte (128 bit) posizionati su indirizzi consecutivi. La numerazione di questi bit va da 0 a 127. Viene chiamata una parola contenente un bit zero la parola più giovanee la parola contenente il 127 ° bit è parola senior.La parola bassa viene memorizzata all'indirizzo inferiore. Indirizzo a doppia parolaconsiderato l'indirizzo della sua parola più giovane. L'indirizzo della parola alta può essere usato per accedere alla metà alta della parola doppia.

Oltre all'interpretazione dei tipi di dati in termini di profondità di bit, supporta il microprocessore a livello di comando logicointerpretazione di questi tipi.

Tipo intero senza segno - Un valore binario senza segno di 8, 16, 32, 64 o 128 bit.

  • byte - da 0 a 255;
  • due byte - da 0 a 65 535;
  • mezza parola - da 0 a 232–1;
  • parola - da 0 a 264–1;
  • doppia parola - da 0 a 2128–1.

Intero tipo con un segno - un valore binario con un segno, dimensione 8, 16, 32, 64 o 128 bit. Il segno in questo numero binario è nel bit alto.

Gli intervalli numerici per questo tipo di dati sono i seguenti:

  • Numero intero a 8 bit - da -128 a +127;
  • Numero intero a 16 bit - da -32.768 a +32.767;
  • Numero intero a 32 bit - da -231 a +231 - 1;
  • Numero intero a 64 bit - da -263 a +263 - 1;
  • Intero a 128 bit - da -2127 a +2127 - 1.

Tipo valido   codifica un numero reale in forma esponenziale:

Il numero codificato viene calcolato dalla formula:

N \u003d ordine mantis2 ;

  • 32 bit reale - da 3,4 · 10-38 a 3,4 · 1038;
  • 64 bit reali - da 1,7 · 10-308 a 1,7 · 10308;
  • 80 bit reali - da 3,4 · 10-4932 a 1,1 · 104932.

Va notato che oltre alla profondità di bit determinata dal tipo di processore, è anche necessario prendere in considerazione il linguaggio di programmazione (in particolare le capacità del compilatore). Ad esempio, il linguaggio di programmazione Turbo Pascal supporta il tipo di dati reali, 48 bit sono assegnati per questo tipo di dati.

Ripetiamo che l'unità minima di informazioni indirizzabili elaborata in un computer è un byte. Un byte è composto da otto bit binari.

Consideriamo in dettaglio la rappresentazione dei numeri nella memoria di un computer.

5.2 Forme di rappresentazione dei numeri nel computer.

Per rappresentare i numeri in un computer, vengono utilizzate due forme diverse: con un punto fisso (virgola) per numeri interi e con un punto mobile (virgola) per numeri reali.

I numeri interi possono essere rappresentati con o senza segno.

Prendi una griglia di 8 bit (vale a dire, byte) e prova a capire come sono rappresentati gli interi senza segno. Il numero più piccolo che può essere inserito in un byte senza segno è zero.

Il numero 0 non è firmato.

Il numero più grande che può essere rappresentato in un byte senza segno è (in forma binaria) 111111112

Tradurremo questo numero in un sistema di numeri decimali (per semplicità, trasferiremo prima all'ottavo).

Quindi, in un byte senza segno, è possibile inserire il numero decimale massimo 255.

Allo stesso modo, è possibile calcolare il numero massimo che può essere inserito in due byte (ovvero 16 bit).

11111111111111112=6553510.

Per i numeri con segno, la cifra più a sinistra viene assegnata al segno. Per un numero positivo, questa cifra è 0, per un negativo - 1.

Il numero +12 in una griglia di 8 bit verrà scritto come segue: 1210 \u003d 11002.

Segno "+"

Prestare attenzione alla disposizione dei numeri nella griglia delle cifre: tra la cifra del segno e la prima cifra significativa del numero, si trovano gli zeri.

Calcoliamo il numero massimo positivo che si adatta in 8 bit con un segno, ad es. 7 bit sono assegnati al numero.

11111112=1778=1.82+7.81+1.80=64+56=127.

Ora calcoliamo il numero massimo positivo, che viene inserito in una griglia a 16 bit con un segno.

1111111111111112 \u003d 7FFF16 \u003d 716.163 + F16.161 + F16.161 + F16.160 \u003d 7.163 + 15.162 + 15.161 + 15.1 \u003d 32767.

La presentazione di numeri negativi è significativamente diversa dalla presentazione di numeri positivi. Innanzitutto, consideriamo alcuni concetti, vale a dire, introduciamo la definizione di codici diretti, inversi e aggiuntivi.

5.3 Codici diretti, inversi e opzionali.

1) numeri positivi.

Per i numeri positivi, il codice diretto è uguale al codice inverso ed è uguale al codice aggiuntivo.

Il codice diretto Xpr di un numero binario X contiene cifre digitali binarie, il segno del numero è scritto a sinistra.

Inserire un numero positivo 97 nella griglia di otto cifre.

Lo stesso numero verrà inserito nella griglia di scarico di 16 bit.

2) Numeri negativi.

I numeri negativi vengono archiviati nella memoria del computer in ordine inverso o in codici aggiuntivi.

Il codice inverso Xobr di un numero binario negativo X si ottiene come segue: uno è scritto nella cifra del segno del numero, nelle cifre digitali gli zeri sono sostituiti da uno e le unità da zero.

Scriviamo il numero -4 nel codice inverso in una griglia a 8 bit. Il codice binario del modulo del numero sorgente è 1002. Il codice inverso si ottiene invertendo ogni bit del codice binario del modulo del numero sorgente registrato in una griglia a 8 bit.

Il codice binario del modulo del numero iniziale è 00000100. Eseguire l'inversione di ogni cifra.

Il codice inverso di -4 è scritto come segue:

Scarica scarico

Il codice aggiuntivo X aggiunge un numero negativo X si ottiene dal codice inverso Xobr aggiungendo uno alla cifra più a destra (è chiamato il meno significativo).

Quindi, Xdop \u003d Xobr + 00000001, ovvero

1
(personaggio. categoria)

(l'aggiunta viene eseguita nel sistema di numeri binari 12 + 12 \u003d 102)

2726252423222120

Ora portiamo il numero risultante nel sistema dei numeri decimali

128+64+32+16+8+4=252

Abbiamo ottenuto che il codice aggiuntivo del numero –4 nel sistema dei numeri decimali è 252. Aggiungi ê-4ê + 252 \u003d 256. 256 \u003d 28. Il numero di cifre della griglia era 8. Il numero 252 "completava" il numero ç - 4ç a 28 \u003d 1000000010.

Ora aggiungiamo due numeri binari: il codice binario del numero ç-4ç nella griglia a 8 bit e il codice aggiuntivo del numero –4:

1 000000002 ne abbiamo 28

Scriviamo la regola generale per ottenere un codice aggiuntivo di un numero intero x.

2k - | x |, x<0, где k – количество разрядов сетки.

Esiste un'altra regola molto semplice per ottenere codice aggiuntivo per un numero negativo.

Per ottenere un codice aggiuntivo, è necessario invertire tutte le cifre del codice diretto del modulo numerico iniziale a partire dalla cifra più a sinistra, tranne l'ultima unità e gli zeri dietro di essa.

00000 100 codice diretto ç-4ç

11111 100

inversione di bit

Definiamo il numero negativo più piccolo che può essere inserito in un byte con un segno. Il codice diretto di questo numero è -1111111. La cifra più a sinistra è riservata per il segno del numero. Trova un codice aggiuntivo per il numero A. Hadop \u003d 10.000.000.

Pertanto, il numero negativo più piccolo che può essere scritto in una griglia a 8 bit è 27 \u003d -128. Ragionando allo stesso modo, otteniamo che per una griglia a 16 bit, il numero negativo più piccolo è 215 o -32.768.

Vengono introdotti codici diretti, inversi e opzionali per semplificare l'operazione di sottrazione (o aggiunta algebrica). Utilizzando i codici inverso e aggiuntivo, l'operazione di sottrazione viene ridotta all'operazione di aggiunta aritmetica. In questo caso, gli operandi sono rappresentati in ordine inverso o in codice aggiuntivo. Considera esempi specifici. Per semplicità, consideriamo una griglia a quattro cifre.

a) Calcola xy, dove x \u003d + 6, y \u003d -3, mentre il risultato è un numero positivo.

xpr \u003d hobr \u003d xdop \u003d 0.110; Wobr \u003d 1.100; udop \u003d 1.101

Aggiunta in codici inversi:

oscillare \u003d 1.100

In questo caso, l'unità che non rientrava nella griglia dei bit (l'unità di trasferimento dalla cifra del segno) viene aggiunta ciclicamente al bit giusto della somma dei codici. La risposta è un numero binario positivo 0,0112 \u003d 310.

udop \u003d 1.101

Quando si aggiungono codici aggiuntivi, l'unità di sinistra che supera i limiti della griglia dei bit viene scartata. Il risultato è un numero positivo 310.

b) Considera il secondo caso: i numeri hanno segni diversi, ma di conseguenza otteniamo un numero negativo.

x \u003d -610 \u003d -1102 e y \u003d + 310 \u003d + 0112.

Hobr \u003d 1.001, hdop \u003d 1.010, control \u003d wobble \u003d udop \u003d 0.011.

Aggiunta in codici inversi:

cfr \u003d 0,011

In questo caso, si ottiene il codice inverso della somma algebrica, è necessario passare dal codice inverso a quello diretto:

(x + y) arr \u003d 1.100, quindi, (x + y) pr \u003d -0112 \u003d -310 (l'unità nella cifra del segno indica meno, tutte le altre cifre sono invertite).

Aggiunta in codici aggiuntivi:

cfr \u003d 0,011

La risposta è presentata in un codice aggiuntivo, è necessario ottenere un codice diretto della somma algebrica.

(1.101) aggiungi ® (1.100) arr ® -0112 \u003d -310.

c) Il terzo caso: entrambi i numeri sono negativi.

X \u003d -6 \u003d -1102, y \u003d -3 \u003d -0112.

Hobr \u003d 1.001, hdp \u003d 1.010,

Wobr \u003d 1.100, udop \u003d 1.101.

Considera l'aggiunta algebrica in codici aggiuntivi:

In questo caso, si verifica il cosiddetto overflow negativo, poiché si è verificato un trasferimento solo dal segno di scarico dell'importo. Pertanto, il risultato è stato negativo e ha superato il valore massimo consentito per questa griglia di bit. Spostiamo il risultato di 1 cifra a destra, quindi (x + y) extra \u003d (1.0111) extra. Passiamo dal codice aggiuntivo a quello diretto:

(1.0111) aggiungi ® (1.0110) ar ® (1.1001) pr \u003d -910.

Va notato che nel processo di esecuzione di calcoli su un computer, possono essere formati sia zero "positivo" che "negativo" e solo nel codice aggiuntivo ha una rappresentazione singola. Veramente,

(+0) pr \u003d 0,00 ... 00; (-0) pr \u003d 1,00 ... 00,

in codice inverso

(+0) arr \u003d 0,00 ... 00; (-0) arr \u003d 1,11 ... 11,

nel codice aggiuntivo

(+0) extra \u003d 0,00 ... 00; (-0) extra \u003d 0,00 ... 00.

Va anche tenuto presente che per una griglia di bit di una determinata lunghezza, un codice aggiuntivo sembra avere un numero più negativo di quelli positivi.

Per questi motivi, in un computer viene spesso utilizzato un codice aggiuntivo per rappresentare numeri negativi.

E l'ultima osservazione molto significativa:

Quando si aggiunge, può verificarsi una situazione in cui la cifra senior della somma non rientra nella griglia di scarico allocata per il risultato e "cattura" la cifra del segno, naturalmente, il valore della somma viene distorto.

Esempio. Consentire una griglia di 4 cifre con un segno, in cui deve essere inserito il risultato della somma di due numeri positivi x \u003d 5 e y \u003d 7.

qpr \u003d 0.101, cfr \u003d 0.111

Poiché la cifra del segno è uguale a una, il risultato viene percepito come un codice aggiuntivo e, se si tenta di visualizzare il valore della somma, diciamo sullo schermo, il processore passerà al codice diretto:

(1.100) aggiungi ® (1.011) arr ® -1002 \u003d -410.

Vediamo cosa succede se al risultato sono assegnate sei cifre:

(x + y) ol \u003d (0.01100) ol \u003d + 12.

La somma di due numeri è calcolata correttamente.

Gestito da solo:

1. Trova codici aggiuntivi per i numeri: -45, 123, -98, -A516, -111, -778. Il formato di presentazione dei dati è un byte con un segno.

2. Trova codici aggiuntivi per i numeri: -11100018, 234, -456, -AC0916, -32324, CC7816, -110012,. Il formato di presentazione dei dati è di due byte con un segno.

5.4 Rappresentazione di numeri in virgola mobile.

La notazione matematica del numero due punto quattro centesimi sembra 2,04 ma un tale record è anche possibile 0,204 × 10, o tale 20,4 × 10-1, o tale 0,0204 × 102 ... Questa serie può essere continuata quanto vuoi. Che cosa hai notato? - la virgola si sposta ("float") a sinistra o a destra e per non modificare il valore del numero, lo moltiplichiamo per 10 in modo negativo o positivo.

Per rappresentare numeri reali nella memoria del computer, viene utilizzato un formato a virgola mobile. Va ricordato che il sistema di numeri reali rappresentato in un computer è discreto e finito.

Nel caso generale, qualsiasi numero N rappresentato in forma a virgola mobile è il prodotto di due fattori:

m - chiameremo il numero mantissa (il modulo della parte intera della mantissa varia nell'intervallo da 1 a S-1 (compresi questi numeri), dove S è la base del sistema numerico),

p è l'ordine intero

S ¾ base del sistema numerico.

Distinguere tra forme normalizzate ed esponenziali di numeri di registrazione. Se la mantissa è una frazione regolare, in cui la prima cifra dopo il punto è diversa da zero, il numero viene chiamato normalizzato.

Quando si rappresenta un numero in forma esponenziale, esiste sempre una parte intera contenente non più di una cifra diversa da zero, infatti questa forma di rappresentazione coincide con la forma matematica standard di scrittura del numero.

Il numero reale nel PC è presentato in forma esponenziale.

Pertanto, quando si rappresentano numeri in virgola mobile, è necessario scrivere la mantissa e l'ordine nella griglia di scarica di un computer con i loro segni. Il segno del numero in questo caso coincide con il segno della mantissa. Scriviamo il numero 314.6789 in forma esponenziale: 314.6789 \u003d 3.1467890000E + 2. Il numero di cifre allocate per gli ordini di immagini determina l'intervallo di numeri in virgola mobile rappresentati nei computer.

Inoltre, questo intervallo dipende anche dalla base S del sistema numerico adottato.

Il valore di un numero arbitrario di un tipo reale è rappresentato in un PC solo con una certa precisione finita, che dipende dal formato interno del numero reale, l'accuratezza della rappresentazione dei numeri aumenta con l'aumentare del numero di cifre della mantissa.

Al fine di semplificare le operazioni sugli ordini, vengono ridotte ad azioni su numeri interi positivi utilizzando il cosiddetto ordine spostato, che è sempre positivo. l'ordine spostato si ottiene aggiungendo all'ordine p un numero intero positivo il cui valore dipende dal particolare formato dei dati.

Il punto decimale è implicito prima della cifra sinistra (senior) della mantissa, ma quando agisce con un numero, la sua posizione cambia a sinistra o a destra, a seconda dell'ordine binario.

Considerare la rappresentazione di numeri in una griglia di bit a 4 byte (la cosiddetta precisione singola) per un PC di tipo PC. Disegneremo una griglia di bit composta da 32 bit e vedremo come vengono distribuiti questi bit.

0 1 2 3 4 5 6 7 8 … 31

segno di mantissa ordine di mantissa

Lascia che sia necessario rappresentare il numero –13,75 in una griglia di cifre a precisione singola. Per fare ciò, attenersi alla seguente procedura:

1. convertire un numero in un sistema di numeri binari;

2. presentarlo in forma esponenziale;

3. ottenere l'ordine originale e la mantissa;

4. ottenere un ordine offset.

1) 13.7510=1101.112

75/100=3/4=3/22=0.112

2) Rappresenta il numero binario 1101.11 in forma esponenziale 1101.11 \u003d 1.10111E + 3.

3) L'ordine iniziale è 3.

Va notato che la parte intera del numero binario rappresentato in forma esponenziale è sempre 1, quindi, al fine di salvare i bit (e quindi aumentare l'intervallo di numeri), la parte intera del numero non viene scritta nella griglia dei bit.

4) Calcoliamo l'ordine spostato (nel formato con singola precisione, il numero 127 viene aggiunto all'ordine originale)

Pcm \u003d 3 + 127 \u003d 130 \u003d 128 + 2 \u003d 27 + 2 \u003d 100000002 + 102 \u003d 1000 00102

Pcm \u003d 100000102

Mantissa \u003d .101112

Il segno del numero è positivo, quindi la cifra più a sinistra è 0.

0 10000010 10111000000000000000000

segno di ordine mantissa

immagina il numero risultante in notazione esadecimale

0100 0001 0101 1100 0000 0000 0000 0000

Quindi, abbiamo ottenuto il numero esadecimale 415С0000.

Risolviamo il problema inverso.

Valore della variabile A Presentato in formato a virgola mobile in notazione esadecimale A \u003d BE200000. Un tipo di variabile singolo per Pascal. Trova il valore decimale della variabile A.

Per risolvere il problema inverso, è necessario eseguire le seguenti operazioni:

1) Convertire un numero esadecimale in un sistema di numeri binari.

2) Seleziona il segno della mantissa (il segno della mantissa coincide con il segno del numero).

3) Evidenziare l'ordine spostato.

4) Calcola l'ordine originale.

5) Scrivi il numero, senza dimenticare di indicarne la parte intera, in forma esponenziale.

6) Convertire un numero da un modulo esponenziale a una notazione regolare.

7) Convertire un numero da binario a decimale.

Eseguiamo i passaggi precedenti.

BE200000 \u003d 1011 1110 0010 0 ... 0000

1 01111100 0100…0

segno di ordine mantissa

Il numero è negativo poiché la cifra a sinistra è 1.

Calcoliamo l'ordine iniziale:

P \u003d P-127 \u003d 1111100-127 \u003d 124-127 \u003d -3.

Scriviamo il numero desiderato in forma esponenziale in notazione binaria:

A \u003d -1.01E-3. Non dimenticare di indicare l'intera parte.

Immagina il numero desiderato nella solita forma di notazione in notazione binaria:

A \u003d -1.01E-3 \u003d -0.001012 \u003d -0.2816 \u003d -0.15625.

L'operazione di aggiunta algebrica di numeri rappresentati in forma a virgola mobile è in qualche modo più complicata che per i numeri rappresentati in forma a virgola fissa. Quando viene eseguito, gli ordini dei termini vengono prima allineati: a seguito del confronto degli ordini, l'ordine di un numero di modulo più piccolo viene preso uguale all'ordine di uno più grande e la sua mantissa viene spostata a destra dal numero di cifre esadecimali pari alla differenza degli ordini.

Nel processo di spostamento della mantissa del termine più piccolo, i bit meno significativi vengono persi, il che introduce un certo errore nel risultato di questa operazione.

Dopo aver allineato gli ordini, la mantissa viene aggiunta algebricamente.

Riassumendo alcune delle presentazioni di informazioni numeriche nella memoria del computer.

La rappresentazione di informazioni numeriche in un automa digitale, di regola, comporta la comparsa di errori, la cui grandezza dipende dalla forma di rappresentazione dei numeri e dalla lunghezza della griglia di scarica dell'automa.

Va ricordato che per registrare un numero in qualsiasi forma di rappresentazione, sono finito   numero di cifre. Per gli interi, questa circostanza ha portato al concetto di intero più grande e più piccolo. Tuttavia, per ogni numero intero che non superi il valore assoluto del più grande, esiste esattamente una rappresentazione nel codice macchina e, in assenza di overflow, il risultato dell'operazione sugli interi sarà accurato. Poiché gli insiemi discreti di numeri sorgente sono mappati in modo univoco su un insieme discreto di risultati.

Un'altra cosa sono i numeri reali. I numeri reali formano un insieme continuo. Nella memoria del computer, i numeri reali sono sostituiti dai loro codici, che formano un insieme discreto finito, quindi:

· Le strette relazioni tra i numeri di un insieme continuo diventano non rigide per i loro codici informatici;

· I risultati del calcolo contengono un inevitabile errore, poiché il codice di un numero reale nella memoria del computer è un rappresentante approssimativo di molti numeri dell'intervallo, la stima dell'errore è un'attività indipendente e tutt'altro che banale;

· Insieme al concetto del numero reale più grande, appare il concetto del numero più piccolo o macchina zero.   Il valore specifico del numero, che viene percepito nel computer come zero macchina, dipende dal tipo di dati utilizzati in un particolare linguaggio di programmazione.

Fallo da solo:

1) Trova la rappresentazione del numero decimale A in notazione esadecimale in formato a virgola mobile. Il tipo di numero è singolo.

A \u003d -357.2265626; A \u003d -0.203125; A \u003d 998.46875;

A \u003d –657.4375; A \u003d 998.8125; A \u003d -905.34375; A \u003d 897.5625

A \u003d 637.65625; A \u003d 56.53125; A \u003d -4,78125.

2) Il valore della variabile A è presentato in formato a virgola mobile in notazione esadecimale. Un tipo di variabile singolo per Pascal. Trova il valore decimale della variabile A.

A \u003d C455C200; A \u003d 43D09400; A \u003d 443F9000; A \u003d C2FF8000;

A \u003d 44071C00; A \u003d 435D2000; A \u003d C401F000; A \u003d C403ES00;

A \u003d C3D87400; A \u003d C3D40000; A \u003d C411FA00; A \u003d 3F700000.

5.5 Codifica di informazioni di testo e grafiche.

La teoria della codifica delle informazioni è una delle sezioni dell'informatica teorica. Gli obiettivi di questo corso non includono domande di teoria dei codici. Considera brevemente e semplicisticamente la codifica di informazioni di testo e grafiche.

Codifica delle informazioni di testo.

La codifica delle informazioni testuali consiste nel fatto che a ciascun carattere di testo viene assegnato un codice - un numero intero positivo. A seconda del numero di bit riservati per la codifica dei caratteri, tutti i tipi di codifica sono divisi in due gruppi: 8 bit e 16 bit. Per ogni tipo di codifica, i caratteri insieme ai loro codici formano una tabella di codifica. Nella tabella di codifica, la prima metà dei codici è riservata alla codifica dei caratteri di controllo, nonché dei numeri e delle lettere dell'alfabeto inglese. Il resto della codifica dei caratteri dell'alfabeto nazionale.

Le codifiche a 8 bit, che includono la codifica dei caratteri dell'alfabeto russo, includono: ASCII, DKOI-8, Win 1251.

La codifica Unicode a 16 bit consente di rappresentare 216 caratteri diversi. La tabella dei codici Unicode contiene caratteri di tutte le lingue nazionali moderne. I caratteri dei primi 128 codici corrispondono alla tabella dei codici ASCII.

Codifica delle immagini.

Prendi in considerazione la codifica raster delle immagini.

Presentiamo la seguente notazione:

K è il numero di colori diversi utilizzati nella codifica dell'immagine;

n è il numero di bit richiesti per codificare il colore di un singolo punto nell'immagine. K e n sono collegati come segue:

Il numero di bit necessari per memorizzare un punto dell'immagine è chiamato profondità del colore.

La colorazione di un punto sullo schermo viene formata utilizzando tre colori di base: rosso, verde, blu. Questi tre colori sono la base del modello RGB. Con il loro aiuto, puoi ottenere 23 colori diversi. In questo caso, è sufficiente un bit per codificare ciascuno dei tre colori di base. Tuttavia, ogni colore di base è caratterizzato non solo dalla sua presenza, ma anche dalla sua intensità. La luminosità di ciascun colore è codificata con un numero binario a otto bit, ovvero la profondità del colore è 8. Pertanto, il numero di sfumature di un colore di base è 28. Ciò significa che da tre colori di base è possibile ottenere (256) 3 \u003d

16 777 216 colori e loro sfumature. Saranno necessarie informazioni su ciascun pixel nella memoria video

n \u003d 8 × 3 \u003d 24 bit \u003d 3 byte.

Pertanto, per memorizzare un'immagine dello schermo, è richiesta una quantità di memoria pari al prodotto della larghezza dello schermo per l'altezza dello schermo e la profondità del colore. Larghezza e altezza sono specificate in pixel.

In generale, la quantità di memoria necessaria per memorizzare un'immagine bitmap è calcolata dalla formula:

V \u003d W × H × n (bit),

dove W è la larghezza dell'immagine in punti;

H - altezza dell'immagine in punti;

V è la quantità di memoria necessaria per memorizzare l'immagine bitmap.

Qualsiasi informazione presentata sul computer come sequenza di byte. Nei byte stessi non ci sono informazioni su come dovrebbero essere interpretati (numeri / caratteri di testo / immagine grafica). In ogni caso, le informazioni sono codificate come una sequenza di 0 e 1, ad es. numeri interi binari positivi   (il numero è scritto usando due cifre - 0/1). La loro interpretazione dipende dal programma e dall'azione che svolge con loro in un determinato momento. Se il programma contiene una sequenza di istruzioni orientate a lavorare con i numeri, i byte vengono considerati come numeri. Se il programma assume un'azione con dati di testo, i byte vengono interpretati come codici numerici condizionali che indicano i segni del testo.

I. Sistemi numerici

Qualsiasi numero è un record multiplo della somma (ad esempio, 168 \u003d 100 + 60 + 8 \u003d 1 10 2 + 6 10 1 + 8 10 0), ad es. numero   - una sequenza di coefficienti con potenze di 10 \u003d\u003e se abbiamo un numero d \u003d a 1 a 2 ... a n(a 1 a 2 ... a n sono numeri), quindi d \u003d a 1 10 n-1 + a 2 10 n-2 + ... a n 10 0.

Gli importi brevemente simili sono scritti come segue: n

d \u003d ∑ a i 10 n-i

Il numero 10 è la base del sistema dei numeri decimali, se prendiamo un numero diverso come base, otteniamo un sistema di scrittura dei numeri diverso, ad es. un altro sistema numerico.

Il sistema numerico è impostato dal valore della base e da molti numeri. figure   - caratteri speciali utilizzati per registrare numeri. Il loro numero deve necessariamente essere uguale al valore della base.

Qualsiasi numero può essere rappresentato in vari sistemi numerici, queste rappresentazioni corrisponderanno strettamente (una a una).

Ad esempio, definire un sistema numerico esadecimale: base \u003d 16 \u003d\u003e ci devono essere 16 cifre (0-15) \u003d 1,2,3,4,5,6,7,8,9, A, B, C, D , E, F. Qui A-F sono i numeri 10,11,12,13,14,15. Tali designazioni sono usate a causa del fatto che i numeri non possono essere scritti usando altri numeri, altrimenti ci sarà confusione nella lettura dei numeri. Annotiamo come apparirà il numero decimale 168 in questo sistema di numeri, tenendo presente la legge generale per scrivere il numero e anche il fatto che la base qui è 16, abbiamo: 168 (10) \u003d A 16 1 + 8 16 0 \u003d\u003e A8 (16 )

Le operazioni aritmetiche in qualsiasi sistema numerico vengono eseguite allo stesso modo del sistema numerico decimale. Segue solo la dimensione della base.

Ad esempio, nel sistema numerico ottale + 15 \u003d 1 8 1 + 5 8 0 \u003d\u003e + 13

14 = 1 8 1 + 4 8 0 => = 12

In un computer, tutti i dati sono rappresentati in notazione binaria. Ad esempio, il numero 5 in forma binaria è scritto come 101. Allo stesso modo, il numero binario 1111 corrisponde al numero decimale 15: 1111 (2) \u003d 1 2 3 + 1 2 2 + 1 2 1 + 1 2 0


Coloro. quattro bit possono rappresentare non più di 16 numeri decimali (0-15).

Come breve record durante la visualizzazione o la correzione di dati binari memorizzati nella memoria del computer, viene utilizzato un sistema di numeri esadecimali. I programmi che forniscono lavoro "diretto" di una persona con memoria del computer, quando interagiscono con lui, convertono automaticamente la rappresentazione binaria dei dati in esadecimali e viceversa. Ogni dato dato scritto in 1 byte è rappresentato solo da due cifre esadecimali, la prima delle quali corrisponde ai primi quattro bit e la seconda cifra ai secondi quattro bit.

Questa forma di rappresentazione di numeri binari (dati), situata nella memoria del computer, è un compromesso tra una persona e i suoi concetti di convenienza e un computer, in cui tutte le informazioni sono presentate solo in forma binaria.

II.Tipi di dati e loro presentazione

Un byte (8 bit) può rappresentare 256 numeri interi positivi (0-255). Questo tipo di dati viene chiamato intero a byte singolo senza segno.

I numeri maggiori di 255 richiedono più di un byte per rappresentare. Per lavorare con loro, vengono utilizzati i tipi:

- numeri interi a doppio byte senza segno   - fornire una rappresentazione di numeri interi positivi (0-65535)

- numeri interi senza segno a quattro byte - fornire una rappresentazione di numeri interi positivi (0 -4,2 miliardi)

I tipi sopra suggeriscono che il numero dovrebbe essere solo positivo \u003d\u003e chiamato "unsigned". Differiscono nella quantità di memoria allocata per la memorizzazione del numero. Tali tipi vengono utilizzati per la codifica numerica di caratteri di testo, colore, intensità dei punti grafici, numerazione degli elementi, ecc.

Per lavorare con numeri interi, che possono essere non solo positivi, ma anche negativi, utilizzare i tipi:

- numeri interi di byte con segno

- numeri interi con segno a doppio byte

- numeri interi con segno a quattro byte

Differiscono nella quantità di memoria allocata per la memorizzazione di ciascun numero.

La base della rappresentazione di entrambi i numeri positivi e negativi è il seguente principio: il numero totale di codici numerici possibili per un dato numero di byte (ad esempio, per un singolo byte - 256) è diviso a metà, una metà viene utilizzata per rappresentare numeri positivi e zero e gli altri numeri negativi . I numeri negativi sono presentati come aggiunta al numero totale di codici numerici. Ad esempio, per un numero a byte singolo (-1) \u003d 255, (-2) - 254, ecc. fino a 128, che rappresenta il numero (-128) \u003d\u003e un intero con segno a byte singolo consente di lavorare con numeri interi da (-128) a 127, doppio byte da (- 32768) a 32767, quattro byte da (≈-2,1 miliardi. ) fino a 2,1 miliardi (2147483648).

I numeri firmati vengono utilizzati per rappresentare i dati numerici con cui vengono eseguite le operazioni aritmetiche.

Quando si interagisce con i programmi, quanto segue tipi di dati:

- tutto cortos (BREVE)

- tutto ordinario   (NUMERO INTERO)

- intero lungo   (LUNGO INTEGER)

- precisione unica   (FLOAT / REAL)

- doppia precisione   (DOUBLEFLOAT / REAL)

- carattere (stringa, testo)   (Char)

- logico   (LOGIKAL)

Tutto corto, tutto normale e tutto lungo   - digita rispettivamente un numero intero con segno a byte singolo, un numero intero con segno a doppio byte, un numero intero con segno a quattro byte.

Nell'informatica, quando si scrivono numeri, un punto (ad esempio, 68.314) viene utilizzato come segno che separa le parti frazionarie e intere. Questo punto fissa la posizione dopo la quale viene indicata la parte frazionaria. La modifica della posizione di un punto comporta una modifica del numero \u003d\u003e viene chiamato questo tipo di record (formato di registrazione) di numeri reali formato punto fisso.

Un numero reale in virgola mobile è composto da 2 parti:

- mantissa

- ordine

Sono separati da un segno speciale (E, D). La mantissa è un numero reale con un punto fisso, l'ordine è dato da un numero intero che indica il grado in cui il numero 10 dovrebbe essere sollevato in modo che quando moltiplicato per la mantissa si ottiene il numero che si intende. Ad esempio, 68.314 in questo formato possono essere scritti come 6.8314Е + 1 \u003d 0.68314Е + 2 \u003d 683.14Е-1, che significa 6.8314 10 1 \u003d 0.68314 10 2 \u003d 68.314 10 -1.

Con questo tipo di registrazione, la posizione del punto non è fissa, la sua posizione nella mantissa è determinata dalla grandezza dell'ordine. Mantissa e l'ordine possono avere un segno. Se la mantissa è modulo<1, причем первая цифра не равна 0, то такой вид записи вещественного числа с плавающей точкой называется normalizzato   (0.68314E + 2).

In un computer, un numero reale è rappresentato in formato a virgola mobile in una forma normalizzata. La mantissa e l'ordine sono in byte adiacenti, manca il separatore (E, D).

Di solito distinguere il numero con precisione singola e doppia. Nel primo caso, quando si inserisce o si emette un numero, vengono indicati la mantissa e il separatore dell'ordine E. Nella memoria del computer, questo numero richiede in genere 4 byte. Nel secondo caso, come separatore - D, nella memoria di un computer, un numero a doppia precisione è generalmente di 8 byte. Questo tipo offre una precisione di calcolo significativamente maggiore rispetto alla precisione singola.

Dati del personaggiocomposto da caratteri di testo separati. Ogni carattere è rappresentato nella memoria del computer da un codice numerico specifico. Per la codifica numerica di caratteri di testo, vengono utilizzate speciali tabelle di codifica (a byte singolo, doppio byte, ecc.). Questo si riferisce al tipo di numero intero senza segno utilizzato per la codifica numerica. Programmi diversi possono essere basati su tabelle diverse \u003d\u003e un documento di prova creato con un programma potrebbe non necessariamente essere letto con un altro.

Le quantità tipo logico   prendi solo due valori:

- VERO   (vero)

- falso(Dire bugie)

È possibile applicare loro operazioni logiche, le principali delle quali sono e   (e), o   (o), non   (negazione). E, oppure –– a due quantità logiche (a\u003e c e a \u003d b). Non - per una quantità logica (non a \u003d b). Il risultato di un'espressione con dati logici (espressione logica) è una quantità logica. Il risultato dell'operazione e \u003d TRUE è solo in un caso, se entrambi i valori \u003d TRUE. Il risultato dell'operazione or \u003d FALSE è solo in un caso, se entrambi i valori \u003d FALSE. L'operazione non modifica il valore di una quantità logica.

Nelle espressioni miste, la priorità è per le operazioni aritmetiche, quindi - per il confronto e infine - per le operazioni logiche. Tra questi, l'operazione non ha la massima priorità, quindi - e, dopo - o.

File e loro archiviazione

Qualsiasi oggetto informativo (documento separato, programma separato) memorizzato su disco e con un nome è file. Le informazioni sui file (nome, dimensioni, data e ora della creazione, posizione sul disco, ecc.) Sono archiviate nelle directory. Catalogare   - una tabella, ciascuna delle quali contiene informazioni su un file o altra directory. Directory \u003d file (tranne la radice) di un tipo speciale. Quando i file vengono scritti su disco, le informazioni su di essi vengono automaticamente scritte nelle directory specificate dall'utente. Condizionalmente, per brevità, dicono: "copia un file da una directory a una directory", "crea una directory in una directory", "elimina un file in una directory", ecc. Tuttavia, ciò in realtà non accade, poiché le directory non hanno directory o file, ci sono solo informazioni su di esse.

Durante la formazione di ciascun disco su di esso, viene automaticamente creata una directory, che viene chiamata radice.   Occupa una certa quantità di dimensioni fisse sul disco. Il suo nome è composto da 2 personaggi: nome del disco e due punti.

Nella directory principale, è possibile creare altre directory chiamate sottodirectory   o directory al primo livello della gerarchia. A loro volta, le directory del primo livello della gerarchia possono creare directory del secondo livello, ecc. Così formato gerarchico (simile ad un albero)   struttura dei dati del file sul disco. Le directory create dall'utente sono file. Ogni file o directory ha un nome composto da due parti separate da un punto. Il lato sinistro è nomegiusto - espansione. È possibile omettere un'estensione insieme a un punto. Il nome può specificare non più di 8 caratteri (nome breve) o non più di 256 caratteri (nome lungo). Nell'estensione - non più di 3 caratteri. L'uso di sole lettere latine, numeri e il trattino basso è considerato standard. Si consiglia di nominare i file con l'estensione per lavorare con elenchi e directory senza l'estensione.

Se si desidera utilizzare qualsiasi file, è necessario specificare in quale directory si trova questo file. Questo viene fatto specificando il percorso (route) del file nella struttura di directory.

Itinerario (percorso) è un elenco di directory quando sono nidificate (da esterno a interno), separate da una barra rovesciata (\\ - barra rovesciata). Quando si specificano i file, viene indicato un percorso prima del suo nome, quindi attraverso \\ - il nome del file (ad esempio, C: \\ Windows \\ win.com - significa che il file win.com si trova nella directory di Windows, che si trova nella directory principale dell'unità C). Tale record è chiamato completo. specifica del file. Breve include solo il nome del file. Le directory e i file creati dall'utente vengono inseriti durante la registrazione nella loro posizione nella memoria del disco. I file possono essere registrati in parti in diversi punti del disco. Durante il processo di registrazione, il file viene automaticamente diviso in tali parti e ognuna di esse viene scritta nel luogo attualmente libero. Queste parti sono chiamate cluster. Le dimensioni del cluster dipendono dalla quantità di memoria del disco, in genere sono necessari diversi settori. In connessione con questo principio di registrazione, l'intera area del disco è divisa in tali cluster e vengono utilizzati per scrivere file. I file vengono anche letti in parti della dimensione di un cluster: il file viene assemblato da parti separate registrate in diversi punti del disco. Questo metodo di memorizzazione dei file viene eseguito utilizzando il cosiddetto tabelle di allocazione dei fileGrasso. Viene creato automaticamente su ciascun disco durante la sua formazione e viene utilizzato per ricordare le posizioni di archiviazione di parti del file. Le celle FAT sono numerate a partire da "0" e corrispondono a porzioni di un disco a 1 cluster. Ogni cella può contenere 0 (indica che il cluster corrispondente è libero), il numero del cluster successivo del file specificato o un codice numerico speciale che indica la fine della catena di cluster per questo file. I tipi di dati interi senza segno vengono utilizzati per rappresentare numeri nel FAT. A seconda del numero di bit utilizzati per rappresentare ciascun numero, si distinguono FAT a 16 bit (16 bit), FAT a 32 bit (32 bit). Come codice speciale che indica la fine della catena del cluster, viene utilizzato il numero massimo che può essere rappresentato nella cella FAT. Per 16 bit, questo numero è 65535 (in forma esadecimale - FFFFF). I programmi che forniscono visualizzazione e regolazione di FAT, mostrano questo codice sullo schermo in forma di testo (E OF). La directory contiene informazioni sul file e in particolare il numero di serie del cluster da cui inizia il file. Queste informazioni, insieme alle informazioni contenute nel FAT (collegamenti ai seguenti cluster), vengono utilizzate per cercare e leggere file.

Reti di computer

I. Caratteristiche principali

Rete di computer   - una serie di computer collegati tra loro tramite canali di trasferimento di informazioni che forniscono agli utenti i mezzi per scambiare informazioni e condividere risorse (hardware, software, informazioni).

Tipi di reti:

- locale   - La principale caratteristica distintiva è che, di regola, tutti i computer collegati sono collegati da un singolo canale di comunicazione. La distanza tra i computer è fino a 10 km (quando si utilizza la comunicazione via cavo), fino a 20 km (canali di comunicazione radio). Le reti locali collegano i computer di uno o più edifici vicini della stessa istituzione.

- globale   - sono caratterizzati da una varietà di canali di comunicazione e dall'uso di canali satellitari, che consente di collegare nodi e computer di comunicazione situati a una distanza di 10-15 mila km l'uno dall'altro. Di solito hanno una struttura a nodi, composta da sottoreti, ognuna delle quali include nodi di comunicazione e canali di comunicazione. I nodi di comunicazione assicurano l'effettivo funzionamento della rete, i computer, le reti locali, i computer di grandi dimensioni, ecc. Sono collegati ad essi.

- intranet - unire gli utenti che lavorano in un'unica organizzazione. Alcuni usano le capacità delle reti locali e globali esistenti. Tale rete può connettere computer situati nello stesso edificio e in diverse parti del mondo.

Esistono computer pubblici sulla rete che forniscono informazioni o servizi informatici agli utenti. server   può essere chiamato il computer utilizzato per questo scopo o il luogo (nelle reti globali) in cui è possibile inviare una richiesta per eseguire qualsiasi servizio. Tale posto può essere un server di computer, una rete locale, un computer di grandi dimensioni, ecc.

I computer degli utenti possono lavorare su reti in due modalità:

Modalità stazione di lavoro- il computer viene utilizzato non solo per inviare una richiesta al server e ricevere informazioni da esso, ma anche per elaborare tali informazioni

Modalità terminale -quest'ultimo non viene eseguito: le informazioni vengono elaborate sul server e solo il risultato di questa elaborazione viene inviato all'utente.

Il server del computer, nelle sue capacità, supera notevolmente le stazioni di lavoro ed è dotato di molte schede di rete ( adattatori) che forniscono connettività alle reti. Una serie di programmi che forniscono reti, - software di rete.Determina il tipo di servizio, la cui implementazione è possibile in questa rete. Attualmente distribuito 2 concetti di base   costruire tale software:

- "Concetto del file server"   - in base al fatto che il software di rete dovrebbe fornire a molti utenti risorse informative sotto forma di file \u003d\u003e viene chiamato un server in tale rete filee software di rete sistema operativo di rete. La sua parte principale si trova sul file server e sulle workstation la sua piccola parte, chiamata conchiglia. Una shell funge da interfaccia tra i programmi che richiedono una risorsa e un file server. Tale server è un repository di file utilizzati da tutti gli utenti. Allo stesso tempo, sia i programmi che i file di dati che si trovano sul file server vengono automaticamente trasferiti sulla workstation, dove questi dati vengono elaborati.

- "Architettura client-server"   - in questo caso, il software di rete è costituito da sistemi software 2 lezioni:

- programmi server   - i cosiddetti sistemi software che forniscono il server

- software client   - sistemi software che forniscono agli utenti clienti

Il lavoro dei sistemi di queste classi è organizzato come segue: i programmi client inviano richieste al programma server, l'elaborazione dei dati principali viene eseguita sul computer server e solo i risultati della query vengono inviati al computer dell'utente.

Nelle reti locali, viene generalmente utilizzato il concetto del primo tipo con un singolo file server. Il core globale è l '"architettura client-server".

La presentazione delle informazioni e la sua trasmissione sulla rete viene effettuata in conformità con gli accordi standard. Viene chiamato il set di tali accordi standard protocollo.

II.Tipologia della rete locale

Tipologia di rete   - Lo schema logico di connessione dei canali di comunicazione dei computer (computer).

Più spesso utilizzato nelle reti locali 3 tipologie principali:

- monocanale

- rotatoria

- a forma di stella

L'uso di un canale di trasmissione delle informazioni che collega i nodi di rete a livello fisico è determinato da un protocollo chiamato metodo di accesso. Questi metodi di accesso sono implementati dalle schede di rete appropriate (adattatori). Tali adattatori sono installati in ciascun computer della rete e forniscono la trasmissione e la ricezione di informazioni attraverso i canali di comunicazione.

Tipologia mono canale   - Viene utilizzato un canale di comunicazione aperto, al quale sono collegati tutti i computer. È chiamato bus monocanale   (bus condiviso).


Terminator

Il terminale viene utilizzato per il collegamento a cavi di rete aperti, progettato per assorbire il segnale trasmesso. In questa tipologia, di norma, viene utilizzato un metodo di accesso con ascolto preliminare del canale per determinare se è gratuito.

Ethernet(velocità - 10 Mbps) - il nome del metodo di accesso. È possibile utilizzare il metodo di accesso. Internet veloce   (velocità - 100 Mbps)

Resistenza ai guasti dei singoli nodi

I principali svantaggi della tipologia:

La rottura del cavo porta all'ineoperabilità dell'intera rete

Riduzione significativa della larghezza di banda della rete con volumi significativi traffico(- informazioni trasmesse sulla rete)

Tipologia di suoneria


Utilizza un anello chiuso costituito da segmenti come canale di comunicazione. I segmenti sono collegati da dispositivi speciali - ripetitori   (Ripetitori). Il ripetitore è progettato per collegare segmenti di rete.

Il metodo di accesso principale qui è Token Ring, un metodo di accesso che passa token.

Esiste un nodo di comunicazione centrale che combina tutti i computer sulla rete. Il centro attivo controlla completamente i computer sulla rete. Il metodo di accesso si basa generalmente anche sull'uso di un token (ad esempio, Arcnet con una velocità di trasferimento dati di 2 Mbit / s). Inoltre, è possibile implementare metodi di accesso Ethernet e Fast Ethernet.

I principali vantaggi della tipologia:

Convenienza in termini di gestione dell'interazione con il computer

Facile cambiare e far crescere la tua rete

I principali svantaggi della rete:

Se il centro attivo fallisce, l'intera rete fallisce

III.Struttura della rete globale

Le informazioni possono essere scambiate tra le reti; per garantire tale comunicazione, vengono chiamati strumenti di interworking ponti, router   e gateway. Questo è un computer speciale in cui sono installati due o più adattatori di rete, ognuno dei quali fornisce comunicazione con una rete. Il bridge viene utilizzato per connettere reti con lo stesso tipo di canali di comunicazione all'interno della rete. Il router collega reti dello stesso tipo, ma con diversi canali di comunicazione all'interno della rete. I gateway vengono utilizzati per fornire comunicazione tra reti di vario tipo, per comunicare reti con vari sistemi informatici (ad esempio una rete locale - un grande computer, una rete locale - una rete globale, un personal computer specifico - una rete globale).

La rete globale include sottoreti di comunicazione a cui sono collegate reti locali, stazioni di lavoro e terminali utente, nonché computer server. Una sottorete di comunicazione è costituita da canali di trasmissione delle informazioni e nodi di comunicazione. I nodi di comunicazione sono progettati per trasmettere rapidamente informazioni sulla rete, selezionare il percorso ottimale per la trasmissione di informazioni, ecc., Ad es. assicurare l'efficienza della rete nel suo insieme. Tale nodo è un dispositivo hardware speciale o un computer specializzato con il software corrispondente.

I server e gli utenti si connettono alle reti globali il più delle volte tramite fornitori di servizi di accesso alla rete - fornitori.

IV. Caratteristiche principali di Internet globale

Ogni utente e server devono avere un indirizzo univoco. Un messaggio trasmesso su una rete viene fornito con gli indirizzi del destinatario e del mittente e durante la trasmissione la scheda di rete si spezza automaticamente in parti di una lunghezza fissa, denominata pacchi. Inoltre, ogni pacchetto (anche automaticamente) viene fornito con gli indirizzi del mittente e del destinatario. Sul computer ricevente, i pacchetti vengono raccolti in un singolo messaggio.

Ogni server o computer dell'utente sulla rete ha 3 indirizzi di livello:

- indirizzo locale   - indirizzo della scheda di rete. Tali indirizzi sono assegnati dai produttori di apparecchiature e sono unici, come il loro scopo è centralizzato. Questo indirizzo viene utilizzato solo all'interno della rete locale.

- Indirizzo IP   - è una sequenza di quattro byte (4 numeri interi senza segno a byte singolo) ed è composto da 2 parti:

I primi 2 byte caratterizzano la rete

Secondo 2 byte - nodo specifico

Questo indirizzo è assegnato dall'amministratore di rete indipendentemente dall'indirizzo locale. Se la rete deve funzionare come parte integrante di Internet, il numero di rete (i primi 2 byte) viene assegnato su raccomandazione di una speciale organizzazione ICANN. In caso contrario, il numero di rete viene scelto arbitrariamente dall'amministratore. Il numero del nodo (secondi 2 byte) è assegnato dall'amministratore di rete (ad esempio 192.100.2.15). Un nodo può appartenere a più reti. In questo caso, dovrebbe avere diversi indirizzi IP \u003d\u003e l'indirizzo IP non caratterizza un computer separato, ma una connessione di rete. Il messaggio trasmesso sulla rete è dotato degli indirizzi IP del destinatario e del mittente.

- indirizzo di dominio   (nome di dominio) - è scomodo per l'utente utilizzare gli indirizzi IP nel lavoro corrente \u003d\u003e esiste la cosiddetta Internet Domain Name System (DNS). Questo sistema fornisce nomi di testo intuitivi (identificatori) chiamati nomi di dominio e gli indirizzi IP corrispondenti sono nascosti dietro di essi. L'utente lavora con nomi di dominio e il software corrispondente, utilizzando speciali server DNS, li converte automaticamente negli indirizzi con cui fornisce i pacchetti trasmessi. Un nome di dominio completo (indirizzo DNS) è una sequenza di nomi separati da un punto. Il primo a sinistra è il nome del computer specifico, quindi il nome di dominio dell'organizzazione, della regione, ecc., L'ultimo a destra è il nome del cosiddetto. dominio principale. Indicare i nomi di dominio principali sullo stato   (ad esempio ru - Russia, us - USA, kz - Kazakistan, ecc.) o dell'appartenenza a un'organizzazione di un certo tipo   (com - commercial, edu - educational, gov - government, mil - military, net - network, org - organisation). Successivamente, sono stati identificati altri domini di radice simili (arte - arte, cultura, impresa - impresa, informazione - informazione, nom - individuo).

I nomi dei computer che hanno accesso a Internet tramite un host (ad esempio un server di rete locale) non sono separati dalla parte successiva nel nome completo dal punto, ma dal segno @ ("et"). Per esempio, [e-mail protetta]

V. Tipi di servizi Internet

La fornitura di servizi su Internet si basa sul modello client-server. Per connettere un computer a Internet, è sufficiente disporre di una linea telefonica, un provider con un gateway per Internet e modem (mioil regolatore dEMmodulatore) - un adattatore speciale per la connessione alla rete globale via telefono. Viene chiamato il computer del provider utilizzato dagli utenti per navigare in Internet ospite. I servizi più famosi forniti dai server Internet includono:

- E-mail   (e-mail) - è il processo di trasferimento dei messaggi tra computer

- trasferimento di file   (Sistema FTP) - progettato per trasferire file da server FTP speciali a qualsiasi utente, per ricevere un file, specificare il nome completo del server e le specifiche complete del file

- visualizza le risorse   (Sistema GOPHER): fornisce la ricerca di file sui server GOPHER per contenuto (oggetto, parola chiave, frase, ecc.)

- newsgroup   - Progettato per discussioni e scambi di notizie, consente di leggere e inviare messaggi a gruppi di informazioni aperti su vari argomenti. Il più grande è il sistema di teleconferenza UseNet   (l'utente può "iscriversi" a qualsiasi argomento disponibile, visualizzare notizie, inviare messaggi). Un altro importante sistema di teleconferenza è IRC   (Internet Relay Chat) (consente ai membri del gruppo di comunicare in tempo reale (modalità interattiva), in questo caso l'utente vede costantemente le informazioni in arrivo sullo schermo e allo stesso tempo può inserire i propri messaggi, che arrivano immediatamente sugli schermi di tutti gli altri membri del gruppo)

- World Wide Web www(world wide web) - è un tentativo di combinare le capacità degli strumenti di cui sopra in uno strumento di informazione, aggiungendo ad essi il trasferimento di immagini grafiche, suoni, video. Il principio è basato ipertesto   (- un sistema di oggetti informativi con riferimenti incrociati, i documenti contengono collegamenti ad altri documenti correlati per significato). Precedentemente utilizzato solo per documenti di testo, attualmente viene chiamato un documento ipertestuale documento ipermediale. Gli oggetti a cui si fa riferimento possono trovarsi su computer remoti. I documenti Hypermedia vengono creati utilizzando un linguaggio HTML speciale (linguaggio di markup ipertestuale) e memorizzati su server speciali (www-server, web-server). Spesso tali documenti sono chiamati pagine Web o siti Web. Vengono chiamati i programmi client corrispondenti i browser   (dal browser inglese) - un motore di ricerca. I browser più moderni forniscono accesso non solo alle pagine dei server Web, ma anche ad altri tipi di servizi. Allo stesso tempo, facendo riferimento a varie risorse, il cosiddetto URL (localizzatore risorse unificato). Ha il seguente formato: codice risorsa: // richiesta specifica.Il codice risorsa determina il tipo di servizio con cui devi lavorare: http: lavora con server Web, per visualizzare siti Web, ftp - sistema ftp, gopher - sistema gopher, notizie - comunicazione con use-net, mailto - email e eccetera.

Per rappresentare le informazioni nella memoria del computer (sia numerica che non numerica), viene utilizzato un metodo di codifica binaria.

Una cella di memoria del computer elementare ha una lunghezza di 8 bit (1 byte). Ogni byte ha il suo numero (si chiama un indirizzo). Viene chiamata la più grande sequenza di bit che un computer può elaborare nel suo insieme parola automatica.   La lunghezza di una parola macchina dipende dalla capacità del processore e può essere uguale a 16, 32 bit, ecc.

Per la codifica dei caratteri, è sufficiente un byte. In questo caso, possono essere rappresentati 256 caratteri (con codici decimali da 0 a 255). Il set di caratteri dei personal computer è spesso un'estensione del codice ASCII (American Standart Code of Information Interchange - un codice americano standard per lo scambio di informazioni).

In alcuni casi, quando si rappresentano i numeri nella memoria di un computer, viene utilizzato un sistema numerico binario-decimale misto, dove è necessario mezzo byte (4 bit) per memorizzare ogni cifra decimale e le cifre decimali da 0 a 9 sono rappresentate dai corrispondenti numeri binari da 0000 a 1001. Ad esempio, un formato decimale compresso , progettato per memorizzare numeri interi con 18 cifre significative e che occupano 10 byte in memoria (il più vecchio dei quali è firmato), utilizza questa particolare opzione.

Un altro modo di rappresentare numeri interi è codice aggiuntivo. L'intervallo di valori dipende dal numero di bit di memoria allocati per la loro memorizzazione. Ad esempio, i valori Integer vanno da
  -32768 (-2 15) a 32677 (2 15 -1) e 2 byte sono allocati per la loro memorizzazione: tipi LongInt - nell'intervallo da -2 31 a 2 31 -1 e sono inseriti in 4 byte: tipo Word - nell'intervallo da 0 vengono utilizzati fino a 65535 (2 16 -1) 2 byte, ecc.

Come si può vedere dagli esempi, i dati possono essere interpretati come numeri con un segno e senza segni. Nel caso di rappresentare una quantità con un segno, la cifra più a sinistra (più alta) indica un numero positivo se contiene zero e uno negativo se ne contiene uno.

In generale, le cifre sono numerate da destra a sinistra, a partire da zero.

Codice aggiuntivo   un numero positivo corrisponde al suo codice diretto. Il codice diretto di un numero intero può essere rappresentato come segue: un numero viene convertito in un sistema numerico binario, quindi la sua notazione binaria a sinistra viene integrata con tanti zeri insignificanti quanti ne richiede il tipo di dati a cui appartiene il numero. Ad esempio, se il numero 37 (10) \u003d 100101 (2) è dichiarato un valore di tipo Integer, il suo codice diretto sarà 0000000000100101 e se è un valore di tipo LongInt, il suo codice diretto sarà. Per una registrazione più compatta, viene utilizzato più spesso un codice esadecimale. I codici risultanti possono essere riscritti come 0025 (16) e 00000025 (16), rispettivamente.

Il codice aggiuntivo di un numero intero negativo può essere ottenuto dal seguente algoritmo:

1. scrivere il codice diretto del modulo del numero;

2. invertilo (sostituisci quelli con zeri, zeri con quelli);

3. Aggiungine uno al codice di inversione.

Ad esempio, scriviamo il codice aggiuntivo del numero -37, interpretandolo come un valore di tipo LongInt:

1. Il codice diretto di 37 è 1

2. codice inverso

3. codice aggiuntivo o FFFFFFDB (16)

Quando si riceve un numero utilizzando un codice aggiuntivo, prima di tutto è necessario determinarne il segno. Se il numero è positivo, è sufficiente tradurre il suo codice nel sistema decimale. In caso di un numero negativo, è necessario eseguire il seguente algoritmo:

1. sottrarre dal codice 1;

2. inverti il \u200b\u200bcodice;

3. Converti in sistema di numeri decimali. Scrivi il numero risultante con un segno meno.

Esempi.   Scriviamo i numeri corrispondenti ai codici aggiuntivi:

un. 0000000000010111.

Poiché lo zero è scritto nell'ordine più alto, il risultato sarà positivo. Questo è il codice per il numero 23.

b. 1111,111111 mille miliardi.

Il codice del numero negativo è scritto qui, eseguiamo l'algoritmo:

1. 1111111111000000 (2) - 1 (2) = 1111111110111111 (2) ;

2. 0000000001000000;

3. 1000000 (2) = 64 (10)

Un metodo leggermente diverso viene utilizzato per rappresentare numeri reali nella memoria di un personal computer. Considerare la rappresentazione delle quantità con virgola mobile.

Qualsiasi numero reale può essere scritto nella forma standard M * 10 p, dove 1 ≤ M< 10, р- целое число. Например, 120100000 = 1,201*10 8 . Поскольку каждая позиция десятичного числа отличается от соседней на степень числа 10, умножение на 10 эквивалентно сдвигу десятичной запятой на 1 позицию вправо. Аналогично деление на 10 сдвигает десятичную запятую на позицию влево. Поэтому приведенный выше пример можно продолжить: 120100000 = 1,201*10 8 = 0,1201*10 9 = 12,01*10 7 ... Десятичная запятая плавает в числе и больше не помечает абсолютное место между целой и дробной частями.

Nella voce sopra, viene chiamato M mantissa   numeri e p è suo ordine. Al fine di mantenere la massima precisione, i computer conservano quasi sempre la mantissa in una forma normalizzata, il che significa che in questo caso la mantissa è un numero compreso tra 1 (10) e 2 (10) (1 ≤ M< 2). Основные системы счисления здесь, как уже отмечалось выше,- 2. Способ хранения мантиссы с плавающей точкой подразумевает, что двоичная запятая находится на фиксированном месте. Фактически подразумевается, что двоичная запятая следует после первой двоичной цифры, т.е. нормализация мантиссы делает единичным первый бит, помещая тем самым значение между единицей и двойкой. Место, отводимое для числа с плавающей точкой, делится на два поля. Одно поле содержит знак и значение мантиссы, а другое содержит знак и значение порядка.



Un personal computer PC IBM con il coprocessore matematico 8087 consente di lavorare con i seguenti tipi validi (l'intervallo di valori è indicato dal valore assoluto):

Si può notare che il bit più significativo allocato alla mantissa è 51, ovvero la mantissa occupa i 52 bit inferiori. Il trattino qui indica la posizione della virgola binaria. La virgola deve essere preceduta da un bit della parte intera della mantissa, ma poiché è sempre uguale a uno, questo bit non è richiesto qui e il bit corrispondente non è in memoria (ma è implicito). Il valore dell'ordine non è memorizzato qui come numero intero rappresentato in un codice aggiuntivo. Per semplificare i calcoli e confrontare i numeri reali, il valore dell'ordine nel computer viene memorizzato come numero di offset, cioè al valore reale dell'ordine, prima di scriverlo in memoria, viene aggiunto un offset. L'offset è selezionato in modo che il valore minimo dell'ordine corrisponda a zero. Ad esempio, per il tipo Double, l'ordine richiede 11 bit e ha un intervallo da 2-1023 a 2 1023, quindi l'offset è 1023 (10) \u003d 1111111111 (2). Infine, il bit 63 indica il segno del numero.

Pertanto, da quanto precede, segue il seguente algoritmo per ottenere una rappresentazione di un numero reale nella memoria del computer:

1. tradurre il modulo di un determinato numero in un sistema di numeri binari;

2. normalizzare il numero binario, ad es. scrivi nella forma M * 2 p, dove M è la mantissa (la sua parte intera è 1 (2)) e r   - l'ordine registrato nel sistema dei numeri decimali;

3. aggiungere l'offset all'ordine e tradurre l'ordine di offset nel sistema di numeri binari;

4. Considerando il segno di un dato numero (0 - positivo; 1 - negativo), scrivere la sua rappresentazione nella memoria del computer.

Esempio.   Scrivi il codice per il numero -312.3125.

1. Il record binario del modulo di questo numero ha la forma 100111000.0101.

2. Abbiamo 100111000.0101 \u003d 1.001110000101 * 2 8.

3. Otteniamo un ordine di offset di 8 + 1023 \u003d 1031. Successivamente, abbiamo 1031 (10) \u003d 10000000111 (2).

LA CAMPANA

C'è chi legge questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam