[Powered by Google Translate] Nate Hardison: În video de pe binar, vom arăta cum să
reprezintă un set de numere întregi, de la zero, pe sus,
folosind doar cifre zero și unu.
În acest videoclip, vom folosi notația binar pentru a
reprezintă text, scrisori și cum, precum.
>> De ce ne-ar deranja să faci asta?
Ei bine, sub capota, un calculator cu adevărat numai
înțelege zero și unu, cifrele binare, deoarece acestea
pot fi reprezentate cu ușurință lucruri electromagnetice.
>> De exemplu, cred că de memoria calculatorului ca un lung
șir de becuri, prin care fiecare individ bec
reprezintă un zero dacă este oprit, iar o
în cazul în care este pornit.
În loc de a folosi o grămadă de becuri, unele moderne
Memoria face acest lucru folosind condensatori care dețin un nivel scăzut
debita pentru a reprezenta un zero și o taxă mare
să reprezinte una.
>> Există alte tehnici, precum și.
Oricum, în scopul de a stoca în memorie ceva, avem nevoie să
prima ao transforma în ceva care poate fi de fapt
reprezentate în hardware fizic.
Așa că haideți să ne gândim cum am putea reprezenta scrisori cu
binar notație.
În limba engleză, avem 26 de litere din alfabetică, A,
>> B, C, D, și așa mai departe, până la Z. Putem atribui fiecare dintre
aceste numere o, spune la zero până la 25, și apoi folosind
notație binară, ne putem reprezenta fiecare număr ca
secvență de zero-uri și cele.
Asta nu e prea rău.
Cu toate acestea, faptul că nu va fi de ajuns.
Cu acest sistem, nu putem distinge între realitate
litere mari și mici.
Dacă vrem calculatorul nostru de a fi capabil să diferențieze între
cele două cazuri, atunci avem nevoie de o suplimentare de 26 de numere.
Și ce despre perioadele, virgule, și
alte semne de punctuație?
>> Pe tastatura mea, am 32 al celor, inclusiv toate
caractere speciale, cum ar fi cursorului și ampersand.
Asta e nu, inclusiv personajele cifre, zero la noua,
din moment ce încă mai doresc să fie în măsură să tastați numere în zecimal
notație pe calculator, chiar dacă computerul numai într-adevăr
înțelege notația binară sub capota.
>> Și, în sfârșit, vom avea nevoie pentru a reprezenta un caracter spațiu atât de
că barul nostru Space funcționează.
Deci, imaginind cum să reprezinte textul de pe calculator
ia un pic mai mult decat ne-am fi gândit inițial.
În plus, presupunem că apoi vin cu propriul nostru de codare
sistem pentru a reprezenta caractere ca numere.
Cu toate acestea ne vom hotărî să codifica caractere vor fi în mod inevitabil
arbitrar, după cum am văzut mai devreme, când am vorbit despre cum se utilizează
Numerele zero, prin 25 pentru a reprezenta literele A
prin Z. De ce nu folosiți la 10 la 35, astfel încât să putem salva
la zero la noua pentru caracterele cifre?
>> Nu e nici un motiv real, ne-am ales ce părea
cel mai bine pentru noi.
Înapoi la începutul anilor 1960, aceasta a fost o problemă reală.
Diferiți producători de calculatoare au fost folosiți
diferite scheme de codare, și această comunicare a făcut
între diverse masini o sarcină foarte dificilă.
American National Standards Institute, ANSI,
a format un comitet pentru a dezvolta un sistem comun.
Și în 1963, Codul american standard pentru informațiile
Interchange, mai frecvent cunoscut sub numele de ASCII, sa născut.
>> ASCII a fost conceput ca o codare de șapte biți, care
înseamnă că fiecare caracter este reprezentat printr-o combinație
de șapte zerouri și cele.
Cu aceste două valori posibile, zero sau unu, pentru fiecare
din cele șapte biți, există două pentru a saptea sau 128
caractere care pot fi reprezentate cu ASCII
codare sistem.
Deci 128 de caractere sună ca o mulțime, nu?
Ei bine, amintiți-vă că există 26 de litere mici, în
Engleză, încă 26 de litere majuscule, cifre, caractere 10
32 semne de punctuație și caractere speciale,
și un caracter spațiu.
>> Asta ne pune la 95, deci avem încă 33 de caractere pe care le
poate reprezenta.
>> Deci, ce-a mai rămas?
Ei bine, în zilele de dezvoltare a ASCII, teletype
Mașini, care sunt mașini de scris, care sunt utilizate pentru a
trimite mesaje printr-o rețea, s-au răspândit.
Și aceste mașini au avut caractere suplimentare utilizate pentru
le controla, de exemplu, pentru a le spune când să se mute
capul de imprimare în jos o linie, alimentare linie sau tasta linie nouă,
atunci când pentru a trece la marginea din stânga, retur de car,
sau pur si simplu returnati tasta, și când pentru a merge înapoi cu un spațiu,
Caracterul backspace, și așa mai departe.
>> Aceste caractere sunt numite caractere de control, și ei
constituie restul setului ASCII.
Deci, dacă ne uităm la o masă ASCII, vedem că primul
32 de numere, la zero, prin 31, sunt rezervate pentru controlul
caractere.
Dar am spus doar că au existat 33 de caractere de control.
Care-i treaba?
Ei bine, numărul zero și 127, primul și ultimul
Set ASCII, au modele speciale de biți, toate zerouri și toate
cele, respectiv.
>> Designerii de ASCII a decis, prin urmare, să
păstra aceste numere pentru caractere speciale suplimentare,
și anume caracterul nul și caracterul DEL.
Nul și DEL au fost destinate pentru editare bandă de hârtie, care a folosit
pentru a fi un mod comun de stocare a datelor.
Bandă de hârtie a fost literalmente doar o fâșie lungă de hârtie, cât și la
intervale regulate pe bandă, te-ai lovi
găuri pentru a stoca date.
În funcție de lățimea benzii, fiecare coloană va fi
posibilitatea de a găzdui cinci, șase, șapte, sau opt biți.
>> Pentru a reprezenta un pic la zero, ai face nimic pentru banda, ai
lasa doar un spațiu gol.
Pentru un pic unul, ai o gaură.
Caracterul nul ar lăsa doar o coloană necompletată,
indicând toate zerouri.
Și caracterul DEL-ar lovi cu pumnul o coloană plină de găuri
prin caseta ta.
Ca urmare, ai putea folosi caracterul DEL pentru a șterge
informații.
Imaginați-vă un tur de scrutin preumplută-out electorală și apoi
stantare toate găurile unpunched.
>> Ai anula buletinul de vot, deoarece este imposibil să se
spune ce voturile au fost originale.
În timp ce caracterul DEL este încă folosit este modernă
Ștergeți-cheie, caracterul nul a ajuns să fie folosit ca
Caracterul reziliere pentru siruri de caractere C și
unele alte formate de date.
Tu l-ar putea, stiu ca personajul la zero backslash,
din moment ce e cum le reprezenta în scris.
Deci, înapoi la masa noastră ASCII.
După primele 32 de caractere de control veni 95
caractere imprimabile.
>> Momentan nu sunt decizii de rece de design cuplu în valoare de
vorbesc despre aici.
În primul rând, personajele zecimal cifre, zero la noua,
corespund cu numerele 48, prin 57, care pare
cufundată până ne uităm la numerele 48, prin 57
scrisă în notație binară.
Dacă vom face acest lucru, atunci vom vedea că cifra de caractere,
la zero, pentru a corespunde 0110000, unul hărți pentru a 0110001, doi la
0110010, și așa mai departe.
Vezi modelul?
Fiecare personaj cifre este mapat la corespunzătoare sale
echivalentul în notație binară, prefixate cu 011.
Următorul, observați că litere mari încep de la 65 de ani,
cu majuscule A, dar cu litere mici
nu începe până la 97.
Deci, există 32 de locuri în între.
Asta pare ciudat.
Acestea sunt doar 26 de litere din alfabet.
>> De ce să-i despărțim ca asta?
Din nou, dacă ne uităm la reprezentanțele binare, putem
vedea un model.
Majusculă A este reprezentată de 1000001, și litere mici a este
reprezentată de 1100001.
Majuscule B este reprezentată de 1000010, și b minuscule este
reprezentată de 1100010.
Pot să vă spun ce se întâmplă aici?
Biți care este a doua din stânga, în două pentru a
cincimi, pentru poziția 32ths, este 0 pentru toate majuscule
litere, și 1 pentru toate litere mici.
>> Asta înseamnă conversia de la litere mari la litere mici, și
invers, este o chestiune de flip-bit simplu.
Așa că ne aduce la sfârșitul tabelului ASCII.
Vă puteți gândi la ceva ce am uitat?
Ei bine, ce zici de enye spaniolă, sau
Greacă sau alfabete chirilice?
Și cum despre Chineză de caractere?
Există o mulțime care a fost lăsat în afara ASCII.
Cu toate acestea, un alt standard numit Unicode a fost
dezvoltat pentru a acoperi toate aceste
personaje și multe altele.
>> Dar asta e un subiect pentru altă dată.
Numele meu este Nate Hardison.
Acest lucru este CS50.