DOUG LLYOYD: Szóval hexadecimális számok, mintha mi szükség egy másik lúgszám rendszer van? Nos, a legtöbb nyugati kultúrákban, Mint azt bizonyára ismeri, használja a tizedes system-- bázis 10, hogy képviselje a numerikus adatokat. Megvan a számjegyek 0, 1, 2, 3, 5, 6, 7,8,9. És ha kell képviselni értéke magasabb, mint kilenc, tudjuk kombinálni ezeket számjegy felhasználásával fogalma helyi érték. Tehát 10, van egy 1 jegyű majd egy 0 számjegy és mi ösztönösen érti hogy mit csinálunk van mi megszorozzuk az első 1 10, majd hozzáadjuk 0 összesen 10. Számítógépek csinálni valami nagyon hasonló, mint Te bizonyára ismeri, A bináris system-- alap 2. A különbség ott lenni hogy már csak 2 számjegy dolgozni with-- 0 és 1. És így nálunk értékeket, ahelyett, hogy az egyik, Tíz, száz, ezer, mivel lenne a tízes számrendszerben, vannak egy, kettő, négy, nyolc, és így tovább. Itt van a dolog, bár, ezeket 0 és 1-es, különösen ha mi vagyunk, hogy a számítógépes szakemberek és csinálunk egy csomó programozási vagy a számítógéppel dolgozó, mentek kell látni a sok bináris számokat. És ezek a 0 és 1-es nagy láncok nagyon nehéz értelmezni. Nem lehet csak egy pillantást vetni a sor 0 és 1-es és feltétlenül tudja Pontosan mi az. De ez még mindig hasznos, hogy képes Express adatok ugyanúgy hogy a számítógép nem. Van ez a fogalom a hexadecimális rendszer, amely bázis 16 helyett 10 alap vagy bázis 2. Ami azt jelenti, hogy van 16 számjegy dolgozni, hanem 10, vagy 2. És ez egy sokkal tömören kifejezni bináris információt a számítógépes rendszer, ez sokkal emberibb érthető. Tehát van a számjegyek 0-tól 9, majd mi is ezeket a további hat digits-- egy, b, c, d, e és f, amely képviseli 10, mi fogalma 10, 11, 12, 13, 14 és 15, a tizedes. Néha, az úton, akkor is ezeket A-tól F-as főváros keresztül F, amely a Ahogy én inkább csinálni. Ez csak a preferált stílus, de vagy jól van, mindketten képviselik elég ugyanarra a dologra. Akkor miért van hexadecimális király? Miért van szükség, hogy ezt a Más további bázis? Már van 2 és 10, miért van szükségünk 16? Nos 16 2 hatványa, és így Minden hexadecimális számjegy, a 0 és f, megfelel egy egyedi megrendelés, illetve egyedi megállapodás 4 bináris számjegy, 4 bit. És így ebben az értelemben, tudjuk kifejezni nagyon hosszú, bonyolult, bináris számokat hexadecimális egy sokkal szabatos, adatvesztés nélkül, vagy kellene do különösen nehézkes konverziók ezeket a számokat. Szóval, ahogy mondtam, Minden hexadecimális számjegy megfelel egy egyedi elrendezése 4 bináris számjegy. Így a bináris sztring 0000 megfelel hexadecimális számjegy 0. 0110 megfelel hexadecimális számjegy 6. És 1111 megfelel a hexadecimális számjegy f. Ha ránézünk ezt a táblázatot, különösen ha ránézünk a bal oldalon a diagram, akkor már látni van egy kis kétértelműséget probléma van. Tizedes 0 nagyjából megkülönböztethetetlen hexadecimális 0, Más, mint az a tény, hogy ez alatt egy oszlopot, amely azt mondja hexadecimális. De valószínűleg nem mindig Van, hogy oszlop van. Általában amikor mi kifejező számokat hexadecimálisat egyértelműen megkülönböztetni őket a tízes számrendszerben, mi általában előtag őket előtaggal 0x. 0x semmit sem jelent a valóságban, ez csak egy nyom minket, mint az emberek hogy mi vagyunk arról, hogy, vagy hamarosan elemzés, egy hexadecimális szám. Nyilvánvalóan a nagyobb számjegy a, b, c, d, és f, amelyek megfelelnek a 10-15 ez elég egyértelmű, hogy ez ez egy hexadecimális szám. És valóban, bármilyen hexadecimális szám, a betűk benne, Valószínűleg elég nyilvánvaló hexadecimális számként. De, még mindig, az Az egyértelműség kedvéért ez Mindig jó ötlet előtag minden alkalommal, amikor utal egy számjegyű hexadecimális szám elé egy 0x. Szóval, bináris, mint mi mondta, van helye értékeket. Van az is helye, a kettes helyen, A négyesek helyet, és egy nyolcas sor. És tizedes is helyet értékeket, a is, több tíz, száz, ezer és hogy mindannyian hívhatják vissza osztályos iskola. És hexadecimális nincs kivétel itt, de tényleg. Azt is helyet értékeket, hanem lét hatásköre 2 vagy hatáskörökkel 10, ők hatásköreit 16. Tehát azt látjuk, számos ehhez hasonló vagyunk elég jól tudja, hogy ez 397, ugye? Nos, ha látunk egy számot, mint ez, tudjuk, hogy ez nem 397 többé. Ez a hexadecimális A hármas számú-kilenc-hetes. Ez nem 397, az azt jelenti, valami más, mert mi használ hatásköre 16, mint az összes helyünket értékek helyett a hatalmi ágak 10. Tény, hogy az a hely, értékek itt lenne azok, akik helyén, a sixteens hely, és a kétszáz ötven hatos helyen, amelyek megfelelnek az elképzeléseinket egy is hely, tízes hely, és egy több száz helye, ha a szám 397. De mivel ez 0-szeres 397, van Egy egyesek helyére, sixteens helyen, és a kétszáz ötven hatos helyen. Vagy, egy 16 a 0 helyre, amely az 1. A 16 az első elektromos helyen, 16. A 16 faragva helyen, 256, és így tovább, és így tovább, és így tovább. Tehát ez a szám valóban 3-szor 16 faragva, plusz 9-szer 16, plusz 7. Nem tettem a matek van, de ez nem 397, hanem sokkal, sokkal nagyobb annál. Hasonlóképpen, mi lehetett volna 0x ADC, Hát ez egy alkalommal 16 faragva. Vagy ha átviszem az elképzeléssel Az egész szám, ami 10-szer 16 faragva, valamint d alkalommal 16, vagy plusz 13 alkalommal 16. És ne aggódj, ha nem betanult hogy d 13, vagy ilyesmi, ott nem túl sok Ezen levél számjegy és ez lesz belőle intuitív elég gyorsan. Szóval megint ez 10-szer 16 faragva, plusz 13 alkalommal 16, plusz 12-szer 1. Tehát 0x adc. Szóval, ahogy mondtam, minden csoport 4 bináris számjegy megfelel egyetlen, hexadecimális számjegy, és így valóban nagyon egyszerűen cserélhető oda-vissza közötti hexadecimális és bináris. Ha ez hosszú sora bináris számjegy, mindössze annyit kell tennie, A kezdeni csoportosítsa őket jobb balra a 4-es csoportokba. És akkor konszolidálja őket hexadecimális számok, súlyosan számának korlátozásával számjegy van feldolgozni mentálisan. Ahelyett 32 0 és 1-es, mint látni fogjuk, egy második, akkor lehet, hogy le csak 8 hexadecimális számjegyek sok tömörebb. A grafikonok néhány diák hátsó fog segít, hogy kitaláljuk, ezt feltérképezése, bár, ismét azt is megtudhatod megjegyeznünk elég gyorsan. Elmegyünk egy példán keresztül most. Tehát ha van egy szám, mint ez, ez tényleg nagy bináris számot, vagy mi úgy tűnik, hogy nagy bináris szám. És azért mondom, hogy ez Csak so-- ez egy behemót, ugye? Annyi 0 és 1-es van. De valószínűleg nem tényleg van értelme annak, amit A nagysága ezt a számot valójában. Jelenleg nincs fogalmad arról, milyen felelne meg tizedes. És valóban nem is fogunk látni, mit megfelel a tizedes most. Mi képes lehet kifejezni ezt oly módon, hogy adna nekünk némi információt arról, hogy milyen nagy ez a szám. Szóval menjünk, hogy átalakítási folyamat. Az első dolog, amire szükségünk tennie, hogy akarunk-csoport Ezeknek a számoknak ki csoportokba 4, kezdve a jobb és azon dolgozik, hogy a bal oldalon. Ott történetesen 32 számjegy Itt, ami azt jelenti, hogy van Szép, tiszta szünetet 8 csoportban 4. Ne feledje, hogy minden csoport a 4 Itt, egyedülállóan megfelel egy hexadecimális számjegy. Tehát kezdjük újra építjük szám a jobb, és a munka maradt. Nos, mi a 1101? Nos, nem a matek ki a fejünkben, van 1 a nyolcas sor, 1 A négykézláb helyen, a 0 a kettes helyen, és egy 1 az egyesek helyén. Ez 8 plusz 4, plusz 1, amely akkor tudjuk, a 13. De talán nem írna közül 13, mert mi dolgozunk hexadecimális. Meg kell alakítani a hexadecimális ekvivalens 13, ami d. 0011, nos ez egy 0 a nyolcas sor, a 0 négyesével helyen, egy 1 a kettesével helyén, és egy 1 az egyesek helyén. Ez 3. Úgy értem csinálom ezt újra, mi van itt 9. Majd 11, de ez b, visszahívás. 2, 10-- vagy egy-- 6, és a 4. És így, hogy nagyon nagy húr 0 és 1-es a felső A tömörebben kifejezve hexadecimális mint 0x 46a2b93d. Na jó, most már megtanultam egy új hűvös készség, mi az értelme? Talán nem használja ezt a idő, mivel fogunk hamarosan látni, használjuk hexadecimális elég Sok programozók. Nem feltétlenül a célja csinál matek vele, hanem azért, mert egy csomó idő memória címek a rendszerünkben képviselteti magát hexadecimális. Ez egy nagyon tömören kifejezni különben nehézkes, bináris számokat. És igen, megint, lehet, nem-- akkor valószínűleg Nem fog csinálni bármilyen matematikai vele, akkor nem lesz megszorozzuk hexadecimális számok együtt, avagy semmi furcsát, mint ezt. De ez egy hasznos képesség, hogy az így kifejezni és megérteni, memória címek, és egyéb felhasználási módját adatok C. Én Doug Lloyd, ez CS50.