1 00:00:00,000 --> 00:00:05,511 2 00:00:05,511 --> 00:00:08,510 DOUG LLYOYD: Szóval hexadecimális számok, mintha mi szükség egy másik lúgszám 3 00:00:08,510 --> 00:00:09,970 rendszer van? 4 00:00:09,970 --> 00:00:13,000 Nos, a legtöbb nyugati kultúrákban, Mint azt bizonyára ismeri, 5 00:00:13,000 --> 00:00:16,560 használja a tizedes system-- bázis 10, hogy képviselje a numerikus adatokat. 6 00:00:16,560 --> 00:00:20,520 Megvan a számjegyek 0, 1, 2, 3, 5, 6, 7,8,9. 7 00:00:20,520 --> 00:00:23,890 És ha kell képviselni értéke magasabb, mint kilenc, 8 00:00:23,890 --> 00:00:26,800 tudjuk kombinálni ezeket számjegy felhasználásával fogalma helyi érték. 9 00:00:26,800 --> 00:00:30,115 Tehát 10, van egy 1 jegyű majd egy 0 számjegy 10 00:00:30,115 --> 00:00:32,240 és mi ösztönösen érti hogy mit csinálunk 11 00:00:32,240 --> 00:00:35,500 van mi megszorozzuk az első 1 10, 12 00:00:35,500 --> 00:00:37,689 majd hozzáadjuk 0 összesen 10. 13 00:00:37,689 --> 00:00:40,480 Számítógépek csinálni valami nagyon hasonló, mint Te bizonyára ismeri, 14 00:00:40,480 --> 00:00:42,409 A bináris system-- alap 2. 15 00:00:42,409 --> 00:00:44,700 A különbség ott lenni hogy már csak 2 számjegy 16 00:00:44,700 --> 00:00:46,770 dolgozni with-- 0 és 1. 17 00:00:46,770 --> 00:00:49,033 És így nálunk értékeket, ahelyett, hogy az egyik, 18 00:00:49,033 --> 00:00:52,600 Tíz, száz, ezer, mivel lenne a tízes számrendszerben, 19 00:00:52,600 --> 00:00:57,690 vannak egy, kettő, négy, nyolc, és így tovább. 20 00:00:57,690 --> 00:01:00,842 Itt van a dolog, bár, ezeket 0 és 1-es, különösen 21 00:01:00,842 --> 00:01:03,800 ha mi vagyunk, hogy a számítógépes szakemberek és csinálunk egy csomó programozási 22 00:01:03,800 --> 00:01:06,924 vagy a számítógéppel dolgozó, mentek kell látni a sok bináris számokat. 23 00:01:06,924 --> 00:01:11,660 És ezek a 0 és 1-es nagy láncok nagyon nehéz értelmezni. 24 00:01:11,660 --> 00:01:16,610 Nem lehet csak egy pillantást vetni a sor 0 és 1-es és feltétlenül tudja 25 00:01:16,610 --> 00:01:17,810 Pontosan mi az. 26 00:01:17,810 --> 00:01:21,980 De ez még mindig hasznos, hogy képes Express adatok ugyanúgy 27 00:01:21,980 --> 00:01:23,480 hogy a számítógép nem. 28 00:01:23,480 --> 00:01:26,580 Van ez a fogalom a hexadecimális rendszer, amely 29 00:01:26,580 --> 00:01:29,840 bázis 16 helyett 10 alap vagy bázis 2. 30 00:01:29,840 --> 00:01:34,420 Ami azt jelenti, hogy van 16 számjegy dolgozni, hanem 10, vagy 2. 31 00:01:34,420 --> 00:01:37,180 És ez egy sokkal tömören kifejezni 32 00:01:37,180 --> 00:01:41,210 bináris információt a számítógépes rendszer, ez sokkal emberibb érthető. 33 00:01:41,210 --> 00:01:43,520 Tehát van a számjegyek 0-tól 9, majd 34 00:01:43,520 --> 00:01:49,480 mi is ezeket a további hat digits-- egy, b, c, d, e és f, amely képviseli 10, 35 00:01:49,480 --> 00:01:56,050 mi fogalma 10, 11, 12, 13, 14 és 15, a tizedes. 36 00:01:56,050 --> 00:01:59,787 Néha, az úton, akkor is ezeket A-tól F-as főváros 37 00:01:59,787 --> 00:02:01,620 keresztül F, amely a Ahogy én inkább csinálni. 38 00:02:01,620 --> 00:02:04,560 Ez csak a preferált stílus, de vagy jól van, 39 00:02:04,560 --> 00:02:07,870 mindketten képviselik elég ugyanarra a dologra. 40 00:02:07,870 --> 00:02:09,090 >> Akkor miért van hexadecimális király? 41 00:02:09,090 --> 00:02:11,580 Miért van szükség, hogy ezt a Más további bázis? 42 00:02:11,580 --> 00:02:14,310 Már van 2 és 10, miért van szükségünk 16? 43 00:02:14,310 --> 00:02:21,650 Nos 16 2 hatványa, és így Minden hexadecimális számjegy, a 0 és f, 44 00:02:21,650 --> 00:02:25,440 megfelel egy egyedi megrendelés, illetve egyedi megállapodás 45 00:02:25,440 --> 00:02:29,060 4 bináris számjegy, 4 bit. 46 00:02:29,060 --> 00:02:34,570 És így ebben az értelemben, tudjuk kifejezni nagyon hosszú, bonyolult, bináris számokat 47 00:02:34,570 --> 00:02:36,440 hexadecimális egy sokkal szabatos, 48 00:02:36,440 --> 00:02:41,080 adatvesztés nélkül, vagy kellene do különösen nehézkes konverziók 49 00:02:41,080 --> 00:02:42,480 ezeket a számokat. 50 00:02:42,480 --> 00:02:44,880 >> Szóval, ahogy mondtam, Minden hexadecimális számjegy 51 00:02:44,880 --> 00:02:48,630 megfelel egy egyedi elrendezése 4 bináris számjegy. 52 00:02:48,630 --> 00:02:53,670 Így a bináris sztring 0000 megfelel hexadecimális számjegy 0. 53 00:02:53,670 --> 00:03:00,340 0110 megfelel hexadecimális számjegy 6. 54 00:03:00,340 --> 00:03:05,225 És 1111 megfelel a hexadecimális számjegy f. 55 00:03:05,225 --> 00:03:07,100 Ha ránézünk ezt a táblázatot, különösen 56 00:03:07,100 --> 00:03:09,099 ha ránézünk a bal oldalon a diagram, 57 00:03:09,099 --> 00:03:11,970 akkor már látni van egy kis kétértelműséget probléma van. 58 00:03:11,970 --> 00:03:15,229 Tizedes 0 nagyjából megkülönböztethetetlen hexadecimális 0, 59 00:03:15,229 --> 00:03:18,020 Más, mint az a tény, hogy ez alatt egy oszlopot, amely azt mondja hexadecimális. 60 00:03:18,020 --> 00:03:22,130 >> De valószínűleg nem mindig Van, hogy oszlop van. 61 00:03:22,130 --> 00:03:25,420 Általában amikor mi kifejező számokat hexadecimálisat 62 00:03:25,420 --> 00:03:28,130 egyértelműen megkülönböztetni őket a tízes számrendszerben, 63 00:03:28,130 --> 00:03:31,860 mi általában előtag őket előtaggal 0x. 64 00:03:31,860 --> 00:03:35,990 0x semmit sem jelent a valóságban, ez csak egy nyom minket, mint az emberek 65 00:03:35,990 --> 00:03:39,190 hogy mi vagyunk arról, hogy, vagy hamarosan elemzés, 66 00:03:39,190 --> 00:03:40,750 egy hexadecimális szám. 67 00:03:40,750 --> 00:03:45,590 Nyilvánvalóan a nagyobb számjegy a, b, c, d, és f, amelyek megfelelnek a 10-15 68 00:03:45,590 --> 00:03:48,840 ez elég egyértelmű, hogy ez ez egy hexadecimális szám. 69 00:03:48,840 --> 00:03:51,620 És valóban, bármilyen hexadecimális szám, a betűk benne, 70 00:03:51,620 --> 00:03:54,642 Valószínűleg elég nyilvánvaló hexadecimális számként. 71 00:03:54,642 --> 00:03:56,350 De, még mindig, az Az egyértelműség kedvéért ez 72 00:03:56,350 --> 00:03:58,290 Mindig jó ötlet előtag minden alkalommal, amikor 73 00:03:58,290 --> 00:04:01,835 utal egy számjegyű hexadecimális szám elé egy 0x. 74 00:04:01,835 --> 00:04:04,370 75 00:04:04,370 --> 00:04:06,810 >> Szóval, bináris, mint mi mondta, van helye értékeket. 76 00:04:06,810 --> 00:04:10,040 Van az is helye, a kettes helyen, A négyesek helyet, és egy nyolcas sor. 77 00:04:10,040 --> 00:04:13,640 És tizedes is helyet értékeket, a is, több tíz, száz, ezer és 78 00:04:13,640 --> 00:04:15,910 hogy mindannyian hívhatják vissza osztályos iskola. 79 00:04:15,910 --> 00:04:18,050 És hexadecimális nincs kivétel itt, de tényleg. 80 00:04:18,050 --> 00:04:22,660 Azt is helyet értékeket, hanem lét hatásköre 2 vagy hatáskörökkel 10, 81 00:04:22,660 --> 00:04:25,050 ők hatásköreit 16. 82 00:04:25,050 --> 00:04:29,410 >> Tehát azt látjuk, számos ehhez hasonló vagyunk elég jól tudja, hogy ez 397, ugye? 83 00:04:29,410 --> 00:04:33,420 Nos, ha látunk egy számot, mint ez, tudjuk, hogy ez nem 397 többé. 84 00:04:33,420 --> 00:04:36,730 Ez a hexadecimális A hármas számú-kilenc-hetes. 85 00:04:36,730 --> 00:04:39,680 Ez nem 397, az azt jelenti, valami más, 86 00:04:39,680 --> 00:04:44,180 mert mi használ hatásköre 16, mint az összes helyünket értékek helyett a hatalmi ágak 87 00:04:44,180 --> 00:04:45,560 10. 88 00:04:45,560 --> 00:04:50,570 Tény, hogy az a hely, értékek itt lenne azok, akik helyén, a sixteens hely, 89 00:04:50,570 --> 00:04:55,080 és a kétszáz ötven hatos helyen, amelyek megfelelnek az elképzeléseinket egy is 90 00:04:55,080 --> 00:04:59,180 hely, tízes hely, és egy több száz helye, ha a szám 397. 91 00:04:59,180 --> 00:05:03,620 De mivel ez 0-szeres 397, van Egy egyesek helyére, sixteens helyen, 92 00:05:03,620 --> 00:05:05,780 és a kétszáz ötven hatos helyen. 93 00:05:05,780 --> 00:05:09,460 Vagy, egy 16 a 0 helyre, amely az 1. 94 00:05:09,460 --> 00:05:12,420 A 16 az első elektromos helyen, 16. 95 00:05:12,420 --> 00:05:17,080 A 16 faragva helyen, 256, és így tovább, és így tovább, és így tovább. 96 00:05:17,080 --> 00:05:24,400 Tehát ez a szám valóban 3-szor 16 faragva, plusz 9-szer 16, plusz 7. 97 00:05:24,400 --> 00:05:28,980 Nem tettem a matek van, de ez nem 397, hanem sokkal, sokkal nagyobb annál. 98 00:05:28,980 --> 00:05:34,050 >> Hasonlóképpen, mi lehetett volna 0x ADC, Hát ez egy alkalommal 16 faragva. 99 00:05:34,050 --> 00:05:38,220 Vagy ha átviszem az elképzeléssel Az egész szám, ami 10-szer 100 00:05:38,220 --> 00:05:44,160 16 faragva, valamint d alkalommal 16, vagy plusz 13 alkalommal 16. 101 00:05:44,160 --> 00:05:47,410 És ne aggódj, ha nem betanult hogy d 13, vagy ilyesmi, 102 00:05:47,410 --> 00:05:49,201 ott nem túl sok Ezen levél számjegy 103 00:05:49,201 --> 00:05:52,820 és ez lesz belőle intuitív elég gyorsan. 104 00:05:52,820 --> 00:05:59,800 Szóval megint ez 10-szer 16 faragva, plusz 13 alkalommal 16, plusz 12-szer 1. 105 00:05:59,800 --> 00:06:03,640 Tehát 0x adc. 106 00:06:03,640 --> 00:06:07,750 >> Szóval, ahogy mondtam, minden csoport 4 bináris számjegy 107 00:06:07,750 --> 00:06:10,000 megfelel egyetlen, hexadecimális számjegy, 108 00:06:10,000 --> 00:06:12,570 és így valóban nagyon egyszerűen cserélhető oda-vissza 109 00:06:12,570 --> 00:06:14,690 közötti hexadecimális és bináris. 110 00:06:14,690 --> 00:06:18,310 Ha ez hosszú sora bináris számjegy, mindössze annyit kell tennie, 111 00:06:18,310 --> 00:06:21,320 A kezdeni csoportosítsa őket jobb balra a 4-es csoportokba. 112 00:06:21,320 --> 00:06:26,550 És akkor konszolidálja őket hexadecimális számok, 113 00:06:26,550 --> 00:06:30,910 súlyosan számának korlátozásával számjegy van feldolgozni mentálisan. 114 00:06:30,910 --> 00:06:33,680 Ahelyett 32 0 és 1-es, mint látni fogjuk, egy második, 115 00:06:33,680 --> 00:06:37,630 akkor lehet, hogy le csak 8 hexadecimális számjegyek sok 116 00:06:37,630 --> 00:06:39,200 tömörebb. 117 00:06:39,200 --> 00:06:43,500 >> A grafikonok néhány diák hátsó fog segít, hogy kitaláljuk, ezt feltérképezése, 118 00:06:43,500 --> 00:06:45,660 bár, ismét azt is megtudhatod megjegyeznünk elég gyorsan. 119 00:06:45,660 --> 00:06:47,320 Elmegyünk egy példán keresztül most. 120 00:06:47,320 --> 00:06:51,507 Tehát ha van egy szám, mint ez, ez tényleg nagy bináris számot, 121 00:06:51,507 --> 00:06:53,340 vagy mi úgy tűnik, hogy nagy bináris szám. 122 00:06:53,340 --> 00:06:56,260 És azért mondom, hogy ez Csak so-- ez egy behemót, ugye? 123 00:06:56,260 --> 00:06:58,959 Annyi 0 és 1-es van. 124 00:06:58,959 --> 00:07:01,000 De valószínűleg nem tényleg van értelme annak, amit 125 00:07:01,000 --> 00:07:02,870 A nagysága ezt a számot valójában. 126 00:07:02,870 --> 00:07:06,150 Jelenleg nincs fogalmad arról, milyen felelne meg tizedes. 127 00:07:06,150 --> 00:07:09,744 És valóban nem is fogunk látni, mit megfelel a tizedes most. 128 00:07:09,744 --> 00:07:11,660 Mi képes lehet kifejezni ezt oly módon, hogy 129 00:07:11,660 --> 00:07:15,640 adna nekünk némi információt arról, hogy milyen nagy ez a szám. 130 00:07:15,640 --> 00:07:17,270 >> Szóval menjünk, hogy átalakítási folyamat. 131 00:07:17,270 --> 00:07:19,311 Az első dolog, amire szükségünk tennie, hogy akarunk-csoport 132 00:07:19,311 --> 00:07:23,050 Ezeknek a számoknak ki csoportokba 4, kezdve a jobb 133 00:07:23,050 --> 00:07:24,120 és azon dolgozik, hogy a bal oldalon. 134 00:07:24,120 --> 00:07:27,260 Ott történetesen 32 számjegy Itt, ami azt jelenti, hogy van 135 00:07:27,260 --> 00:07:33,210 Szép, tiszta szünetet 8 csoportban 4. 136 00:07:33,210 --> 00:07:36,200 Ne feledje, hogy minden csoport a 4 Itt, egyedülállóan megfelel 137 00:07:36,200 --> 00:07:37,760 egy hexadecimális számjegy. 138 00:07:37,760 --> 00:07:42,080 Tehát kezdjük újra építjük szám a jobb, és a munka maradt. 139 00:07:42,080 --> 00:07:44,890 Nos, mi a 1101? 140 00:07:44,890 --> 00:07:49,220 Nos, nem a matek ki a fejünkben, van 1 a nyolcas sor, 1 141 00:07:49,220 --> 00:07:54,310 A négykézláb helyen, a 0 a kettes helyen, és egy 1 az egyesek helyén. 142 00:07:54,310 --> 00:07:58,820 Ez 8 plusz 4, plusz 1, amely akkor tudjuk, a 13. 143 00:07:58,820 --> 00:08:02,400 De talán nem írna közül 13, mert mi dolgozunk hexadecimális. 144 00:08:02,400 --> 00:08:07,982 Meg kell alakítani a hexadecimális ekvivalens 13, ami d. 145 00:08:07,982 --> 00:08:12,940 >> 0011, nos ez egy 0 a nyolcas sor, a 0 négyesével helyen, 146 00:08:12,940 --> 00:08:15,190 egy 1 a kettesével helyén, és egy 1 az egyesek helyén. 147 00:08:15,190 --> 00:08:16,880 Ez 3. 148 00:08:16,880 --> 00:08:20,180 Úgy értem csinálom ezt újra, mi van itt 9. 149 00:08:20,180 --> 00:08:23,850 Majd 11, de ez b, visszahívás. 150 00:08:23,850 --> 00:08:30,570 2, 10-- vagy egy-- 6, és a 4. 151 00:08:30,570 --> 00:08:34,669 És így, hogy nagyon nagy húr 0 és 1-es a felső 152 00:08:34,669 --> 00:08:38,549 A tömörebben kifejezve hexadecimális mint 0x 46a2b93d. 153 00:08:38,549 --> 00:08:42,309 154 00:08:42,309 --> 00:08:45,870 >> Na jó, most már megtanultam egy új hűvös készség, mi az értelme? 155 00:08:45,870 --> 00:08:49,560 Talán nem használja ezt a idő, mivel fogunk hamarosan látni, 156 00:08:49,560 --> 00:08:52,370 használjuk hexadecimális elég Sok programozók. 157 00:08:52,370 --> 00:08:55,060 Nem feltétlenül a célja csinál matek vele, 158 00:08:55,060 --> 00:08:58,470 hanem azért, mert egy csomó idő memória címek a rendszerünkben 159 00:08:58,470 --> 00:09:00,440 képviselteti magát hexadecimális. 160 00:09:00,440 --> 00:09:04,390 Ez egy nagyon tömören kifejezni különben nehézkes, bináris számokat. 161 00:09:04,390 --> 00:09:06,440 És igen, megint, lehet, nem-- akkor valószínűleg 162 00:09:06,440 --> 00:09:07,640 Nem fog csinálni bármilyen matematikai vele, akkor nem 163 00:09:07,640 --> 00:09:09,848 lesz megszorozzuk hexadecimális számok együtt, 164 00:09:09,848 --> 00:09:11,770 avagy semmi furcsát, mint ezt. 165 00:09:11,770 --> 00:09:16,120 De ez egy hasznos képesség, hogy az így kifejezni és megérteni, 166 00:09:16,120 --> 00:09:23,290 memória címek, és egyéb felhasználási módját adatok C. 167 00:09:23,290 --> 00:09:26,240 >> Én Doug Lloyd, ez CS50. 168 00:09:26,240 --> 00:09:28,028