1 00:00:00,000 --> 00:00:05,511 2 00:00:05,511 --> 00:00:08,510 DOUG LLYOYD: rhifau Felly hecsadegol, fel pe baem angen nifer sylfaenol arall 3 00:00:08,510 --> 00:00:09,970 Cynllun iawn? 4 00:00:09,970 --> 00:00:13,000 Wel, y rhan fwyaf o ddiwylliannau Gorllewinol, fel y mae'n debyg y byddwch yn gyfarwydd, 5 00:00:13,000 --> 00:00:16,560 defnyddio'r sylfaen system, degol 10, i gynrychioli data rhifol. 6 00:00:16,560 --> 00:00:20,520 Mae gennym y digidau 0, 1, 2, 3, 5, 6, 7,8,9. 7 00:00:20,520 --> 00:00:23,890 Ac os bydd angen i gynrychioli gwerthoedd yn uwch na naw, 8 00:00:23,890 --> 00:00:26,800 gallwn gyfuno digidau rhai gan ddefnyddio'r syniad o werth lle. 9 00:00:26,800 --> 00:00:30,115 Felly, ar gyfer 10, mae gennym 1 digid ddilyn gan 0 digid 10 00:00:30,115 --> 00:00:32,240 ac yr ydym yn reddfol yn deall bod yr hyn yr ydym yn ei wneud 11 00:00:32,240 --> 00:00:35,500 mae ein bod yn lluosi y cyntaf 1 o 10, 12 00:00:35,500 --> 00:00:37,689 ac yna ychwanegu 0 ar gyfer cyfanswm o 10. 13 00:00:37,689 --> 00:00:40,480 Cyfrifiaduron gwneud rhywbeth 'n bert debyg, fel y mae'n debyg eich bod yn gyfarwydd, 14 00:00:40,480 --> 00:00:42,409 gyda'r sylfaen system, deuaidd 2. 15 00:00:42,409 --> 00:00:44,700 Y gwahaniaeth nad oes mai dim ond 2 ddigid 16 00:00:44,700 --> 00:00:46,770 i weithio with-- 0 ac 1. 17 00:00:46,770 --> 00:00:49,033 Ac felly mae ein gwerthoedd ar waith, yn hytrach na bod yn un, 18 00:00:49,033 --> 00:00:52,600 deg, cant, mil, gan eu bod yn fyddai yn y system degol, 19 00:00:52,600 --> 00:00:57,690 yn un, dau, pedwar, wyth, ac yn y blaen. 20 00:00:57,690 --> 00:01:00,842 Dyma y peth, fodd bynnag, 0 ac 1 yn y rhai, yn enwedig 21 00:01:00,842 --> 00:01:03,800 os ydym yn cael gwyddonwyr cyfrifiadurol ac rydym yn gwneud llawer o raglenni 22 00:01:03,800 --> 00:01:06,924 neu weithio gyda chyfrifiaduron, yn mynd i gael ei gweld llawer o rifau deuaidd. 23 00:01:06,924 --> 00:01:11,660 A'r rhai ar 0 a 1 mewn cadwyni mawr Gall fod yn anodd iawn i'w dosrannu. 24 00:01:11,660 --> 00:01:16,610 Ni allwn dim ond yn edrych ar gyfres o 0 ac 1, ac yn gwybod o reidrwydd 25 00:01:16,610 --> 00:01:17,810 yn union beth ydyw. 26 00:01:17,810 --> 00:01:21,980 Ond mae'n dal i fod yn ddefnyddiol gallu data penodol yn yr un modd 27 00:01:21,980 --> 00:01:23,480 bod cyfrifiadur yn ei wneud. 28 00:01:23,480 --> 00:01:26,580 Mae gennym syniad hwn o'r system hecsadegol, sef 29 00:01:26,580 --> 00:01:29,840 sylfaen 16, yn lle sylfaen 10 neu sylfaen 2. 30 00:01:29,840 --> 00:01:34,420 Sy'n golygu bod gennym 16 o digidau i weithio gyda yn hytrach na 10 neu 2. 31 00:01:34,420 --> 00:01:37,180 Ac mae'n llawer mwy ffordd gryno i fynegi 32 00:01:37,180 --> 00:01:41,210 gwybodaeth deuaidd ar system gyfrifiadurol, mae'n llawer mwy dynol dealladwy. 33 00:01:41,210 --> 00:01:43,520 Felly mae gennym y digidau 0 drwy 9, ac yna 34 00:01:43,520 --> 00:01:49,480 rydym hefyd wedi chwech ychwanegol hyn digits-- a, b, c, d, e, f a, sy'n cynrychioli 10, 35 00:01:49,480 --> 00:01:56,050 ein syniad o 10, 11, 12, 13, 14 a 15, yn degol. 36 00:01:56,050 --> 00:01:59,787 Weithiau, gyda llaw, wnewch chi helpu hefyd gweld y rhain drwodd f fel cyfalaf A 37 00:01:59,787 --> 00:02:01,620 drwy F, sef y ffordd yr wyf yn tueddu i wneud hynny. 38 00:02:01,620 --> 00:02:04,560 Mae wedi dim ond fy ffafrio arddull, ond naill ai yn iawn, 39 00:02:04,560 --> 00:02:07,870 y ddau ohonynt yn cynrychioli 'n bert lawer yr un peth. 40 00:02:07,870 --> 00:02:09,090 >> Felly pam yn oer hecsadegol? 41 00:02:09,090 --> 00:02:11,580 Pam mae angen i ni ddefnyddio hyn sylfaen ychwanegol eraill? 42 00:02:11,580 --> 00:02:14,310 Mae gennym eisoes 2 a 10, pam mae angen i ni 16? 43 00:02:14,310 --> 00:02:21,650 Wel 16 yn bŵer o 2, ac yn y blaen pob digid hecsadegol, 0 trwy f, 44 00:02:21,650 --> 00:02:25,440 cyfateb i unigryw archebu, neu drefniant unigryw 45 00:02:25,440 --> 00:02:29,060 o 4 digid deuaidd, 4 ddarnau. 46 00:02:29,060 --> 00:02:34,570 Ac felly yn yr ystyr honno, gallwn fynegi rhifau hir iawn, cymhleth, deuaidd 47 00:02:34,570 --> 00:02:36,440 mewn hecsadegol mewn llawer ffordd fwy cryno, 48 00:02:36,440 --> 00:02:41,080 heb golli gwybodaeth neu orfod gwneud addasiadau arbennig o feichus 49 00:02:41,080 --> 00:02:42,480 ar y niferoedd hynny. 50 00:02:42,480 --> 00:02:44,880 >> Felly, fel yr wyf newydd ei ddweud, pob digid hecsadegol 51 00:02:44,880 --> 00:02:48,630 cyfateb i unigryw trefniant o 4 digid deuaidd. 52 00:02:48,630 --> 00:02:53,670 Felly y llinyn deuaidd 0000 cyfateb i digid hecsadegol 0. 53 00:02:53,670 --> 00:03:00,340 0110 yn cyfateb i 6 digid hecsadegol. 54 00:03:00,340 --> 00:03:05,225 A 1111 yn cyfateb i digid hecsadegol f. 55 00:03:05,225 --> 00:03:07,100 Os ydych yn edrych ar siart hwn, yn arbennig 56 00:03:07,100 --> 00:03:09,099 os ydych yn edrych ar y ochr chwith y siart, 57 00:03:09,099 --> 00:03:11,970 gallwch eisoes yn gweld mae 'na dipyn o broblem amwysedd yma. 58 00:03:11,970 --> 00:03:15,229 Degol 0 'n bert lawer gwahaniaethu rhwng hecsadegol 0, 59 00:03:15,229 --> 00:03:18,020 ar wahân i'r ffaith ei fod o dan colofn sy'n dweud hecsadegol. 60 00:03:18,020 --> 00:03:22,130 >> Ond rydym nid mae'n debyg y bydd bob amser gael y golofn yno. 61 00:03:22,130 --> 00:03:25,420 Yn gyffredinol, pan fyddwn yn mynegi rhifau i mewn nodiant hecsadegol 62 00:03:25,420 --> 00:03:28,130 gwahaniaethu'n glir ohonynt o'r nodiant degol, 63 00:03:28,130 --> 00:03:31,860 byddwn fel arfer yn eu rhagddodiad gyda'r rhagddodiad 0x. 64 00:03:31,860 --> 00:03:35,990 0x golygu dim byd mewn gwirionedd, 'i' jyst cliw i ni fel bodau dynol 65 00:03:35,990 --> 00:03:39,190 bod yr hyn yr ydym chi ar fin ei weld, neu ar fin dechrau dosrannu, 66 00:03:39,190 --> 00:03:40,750 yn rhif hecsadegol. 67 00:03:40,750 --> 00:03:45,590 Yn amlwg ar gyfer y digidau uwch a, b, c, d, f a, sy'n cyfateb i 10-15 68 00:03:45,590 --> 00:03:48,840 mae'n eithaf diamwys sy'n mae hynny'n rhif hecsadegol. 69 00:03:48,840 --> 00:03:51,620 Ac yn wir, unrhyw hecsadegol Rhif sydd llythyrau ynddo, 70 00:03:51,620 --> 00:03:54,642 Mae'n debyg mai eithaf amlwg fel rhif hecsadegol. 71 00:03:54,642 --> 00:03:56,350 Ond, yn dal, ar gyfer y mwyn bod yn glir, 'i' 72 00:03:56,350 --> 00:03:58,290 bob amser yn syniad da i rhagddodiad bob tro y byddwch 73 00:03:58,290 --> 00:04:01,835 cyfeirio at digid fel hecsadegol rhif trwy prefixing â 0x. 74 00:04:01,835 --> 00:04:04,370 75 00:04:04,370 --> 00:04:06,810 >> Felly, deuaidd, wrth i ni Meddai, mae gan werthoedd lle. 76 00:04:06,810 --> 00:04:10,040 Mae y lle rhai, yn lle fesul dau, lle pedwar, ac yn lle wyth. 77 00:04:10,040 --> 00:04:13,640 Ac mae ganddo hefyd degol werthoedd lle, mae'r rhai, degau, cannoedd, a miloedd 78 00:04:13,640 --> 00:04:15,910 y gallwn i gyd yn cofio o radd ysgol. 79 00:04:15,910 --> 00:04:18,050 A hecsadegol oes eithriad yma, mewn gwirionedd. 80 00:04:18,050 --> 00:04:22,660 Mae hefyd yn werthoedd lle ond yn lle hynny o fod pwerau 2 neu bwerau o 10, 81 00:04:22,660 --> 00:04:25,050 eu bod pwerau 16. 82 00:04:25,050 --> 00:04:29,410 >> Felly, yr ydym yn gweld nifer fel rydym hwn yn gwybod yn eithaf amlwg ei fod yn 397, dde? 83 00:04:29,410 --> 00:04:33,420 Wel, os gwelwn nifer fel hyn, rydym yn gwybod nad yw hyn yn 397 anymore. 84 00:04:33,420 --> 00:04:36,730 Mae hyn yn y hecsadegol rhif tri 9-7. 85 00:04:36,730 --> 00:04:39,680 Dyw hi ddim yn 397, mae'n golygu rhywbeth gwahanol, 86 00:04:39,680 --> 00:04:44,180 oherwydd ein bod yn defnyddio pwerau o 16 gan fod yr holl o'n gwerthoedd lle yn hytrach na phwerau 87 00:04:44,180 --> 00:04:45,560 o 10. 88 00:04:45,560 --> 00:04:50,570 Yn wir, mae'r gwerthoedd le yma y byddai yn y lle rhai, y lle sixteens, 89 00:04:50,570 --> 00:04:55,080 a'r lle 2-100-pum deg chwech, sy'n cyfateb i ein syniad o rai 90 00:04:55,080 --> 00:04:59,180 lle, degau lle, ac mae cannoedd lle, os bydd y nifer yn 397. 91 00:04:59,180 --> 00:05:03,620 Ond gan ei fod yn 0x 397, rydym wedi a rhai lle lle, sixteens, 92 00:05:03,620 --> 00:05:05,780 a lle 2-100-pum deg a chwech. 93 00:05:05,780 --> 00:05:09,460 Neu, mae 16 i'r 0 lle, sydd 1. 94 00:05:09,460 --> 00:05:12,420 A 16 i'r lle pŵer cyntaf, 16. 95 00:05:12,420 --> 00:05:17,080 Mae 16 sgwariau lle, 256, a yn y blaen, ac yn y blaen, ac yn y blaen. 96 00:05:17,080 --> 00:05:24,400 Felly rhif hyn yn wir 3 gwaith 16 sgwâr, yn ogystal â 9 gwaith 16, ynghyd â 7. 97 00:05:24,400 --> 00:05:28,980 Doeddwn i ddim yn gwneud y cwestiwn yma, ond nid yw'n 397, mae'n llawer, llawer mwy na hynny. 98 00:05:28,980 --> 00:05:34,050 >> Yn yr un modd, gallem gael ADC 0x, yn dda bod 'na adegau 16 sgwâr. 99 00:05:34,050 --> 00:05:38,220 Neu os byddwn yn cyfieithu y at ein syniad o rifau degol, dyna 10 gwaith 100 00:05:38,220 --> 00:05:44,160 16 sgwâr, yn ogystal â amserau d 16, neu yn ogystal â 13 gwaith 16. 101 00:05:44,160 --> 00:05:47,410 A pheidiwch â phoeni os nad ydych wedi cof hynny d yn 13, neu unrhyw beth fel 'na, 102 00:05:47,410 --> 00:05:49,201 nid oes gormod o o ddigidau llythyr yma 103 00:05:49,201 --> 00:05:52,820 a bydd yn dod yn 'n athrylithgar yn weddol gyflym. 104 00:05:52,820 --> 00:05:59,800 Felly, unwaith eto mae hyn yn 10 gwaith 16 sgwâr, yn ogystal â 13 o weithiau 16, yn ogystal â 12 gwaith 1. 105 00:05:59,800 --> 00:06:03,640 ADC Felly 0x. 106 00:06:03,640 --> 00:06:07,750 >> Felly, fel y dywedais, mae pob grŵp o 4 digid deuaidd 107 00:06:07,750 --> 00:06:10,000 yn cyfateb i un digid hecsadegol, 108 00:06:10,000 --> 00:06:12,570 ac felly mae'n mewn gwirionedd 'n sylweddol hawdd i newid yn ôl ac ymlaen 109 00:06:12,570 --> 00:06:14,690 rhwng hecs a deuaidd. 110 00:06:14,690 --> 00:06:18,310 Os oes gennych y llinyn hir o digid deuaidd, y cyfan sydd angen i chi ei wneud 111 00:06:18,310 --> 00:06:21,320 yn dechrau eu grwpio yn iawn i'r chwith fel grwpiau o 4. 112 00:06:21,320 --> 00:06:26,550 Ac yna gallwch atgyfnerthu i mewn rhifau hecsadegol, 113 00:06:26,550 --> 00:06:30,910 cyfyngu yn ddifrifol y nifer o Digidau rhaid i chi brosesu yn feddyliol. 114 00:06:30,910 --> 00:06:33,680 Yn hytrach na 32 0 ac 1, a fel y byddwn yn gweld mewn eiliad, 115 00:06:33,680 --> 00:06:37,630 efallai y byddwch yn gallu cael i lawr i ddim ond 8 digid hecsadegol, mae llawer 116 00:06:37,630 --> 00:06:39,200 yn fwy cryno. 117 00:06:39,200 --> 00:06:43,500 >> Mae'r siartiau ychydig o sleidiau gefn bydd eich helpu i chyfrif i maes mapio hwn, 118 00:06:43,500 --> 00:06:45,660 er, unwaith eto wnewch chi helpu cof ei fod yn weddol gyflym. 119 00:06:45,660 --> 00:06:47,320 Byddwn yn mynd drwy esiampl ar hyn o bryd. 120 00:06:47,320 --> 00:06:51,507 Felly, os oes gennym rif fel hyn, y rhif deuaidd wir yn fawr, 121 00:06:51,507 --> 00:06:53,340 neu yr hyn sy'n ymddangos i fod yn rhif deuaidd mawr. 122 00:06:53,340 --> 00:06:56,260 A'r rheswm yr wyf yn dweud hynny, mae'n jyst so-- ei fod yn behemoth, dde? 123 00:06:56,260 --> 00:06:58,959 Mae cymaint o 0 ac 1 yn yno. 124 00:06:58,959 --> 00:07:01,000 Ond rydym yn ei wneud yn ôl pob tebyg nid 'n sylweddol yn meddu ar synnwyr o'r hyn 125 00:07:01,000 --> 00:07:02,870 maint y rhif hwn mewn gwirionedd. 126 00:07:02,870 --> 00:07:06,150 Nid oes gennym unrhyw syniad beth y mae'n Byddai yn cyfateb i degol. 127 00:07:06,150 --> 00:07:09,744 Ac yn wir, ni fyddwn yn hyd yn oed yn gweld yr hyn y mae'n cyfateb i mewn degol ar hyn o bryd. 128 00:07:09,744 --> 00:07:11,660 Efallai y byddwn yn gallu fynegi hyn mewn ffordd sy'n 129 00:07:11,660 --> 00:07:15,640 Byddai rhoi mwy o wybodaeth i ni am pa mor fawr y nifer hwn yn. 130 00:07:15,640 --> 00:07:17,270 >> Felly gadewch i ni fynd i'r broses drosi. 131 00:07:17,270 --> 00:07:19,311 Y peth cyntaf y mae angen ei wneud yw ein bod am i grŵp 132 00:07:19,311 --> 00:07:23,050 digid hyn allan yn grwpiau o 4, gan ddechrau o'r dde 133 00:07:23,050 --> 00:07:24,120 a gweithio ar y chwith. 134 00:07:24,120 --> 00:07:27,260 Mae digwydd bod yn 32 digid yma, sy'n golygu bod gennym 135 00:07:27,260 --> 00:07:33,210 toriad llwyr neis o 8 grŵp o 4. 136 00:07:33,210 --> 00:07:36,200 Cofiwch fod pob grŵp o 4 yma, unigryw cyfateb 137 00:07:36,200 --> 00:07:37,760 at digid hecsadegol. 138 00:07:37,760 --> 00:07:42,080 Felly, byddwn yn dechrau eto adeiladu ein Rhif o'r dde, ac yn gweithio chwith. 139 00:07:42,080 --> 00:07:44,890 Wel beth 1101? 140 00:07:44,890 --> 00:07:49,220 Wel rydym yn gwneud y cwestiwn yn ein pen, mae gennym 1 yn y lle wyth, sef 1 141 00:07:49,220 --> 00:07:54,310 yn y lle pedwar, a 0 yn y fesul dau lle, ac mae 1 yn y lle rhai. 142 00:07:54,310 --> 00:07:58,820 Dyna 8 ynghyd â 4 ac 1, y byddem yn gwybod fel 13. 143 00:07:58,820 --> 00:08:02,400 Ond rydym ni fyddai yn ôl pob tebyg yn ysgrifennu 13 allan, oherwydd ein bod yn gweithio gyda hecsadegol. 144 00:08:02,400 --> 00:08:07,982 Mae angen i ni ei newid i'r hecsadegol sy'n cyfateb i 13, sydd yn d. 145 00:08:07,982 --> 00:08:12,940 >> 0011, yn dda bod 'na 0 yn y lle wyth, mae 0 fesul pedwar lle, 146 00:08:12,940 --> 00:08:15,190 o 1 yn y lle fesul dau, ac mae 1 yn y lle rhai. 147 00:08:15,190 --> 00:08:16,880 Dyna 3. 148 00:08:16,880 --> 00:08:20,180 Yr wyf yn golygu cadw gwneud hyn eto, mae gennym yma 9. 149 00:08:20,180 --> 00:08:23,850 Ac yna 11, ond mae hynny'n b, galw i gof. 150 00:08:23,850 --> 00:08:30,570 2, 10-- neu a-- 6, a 4. 151 00:08:30,570 --> 00:08:34,669 Ac fel y llinyn mawr iawn o 0 ac 1 yn y top 152 00:08:34,669 --> 00:08:38,549 cael ei fynegi yn fwy cryno yn hecsadegol fel 0x 46a2b93d. 153 00:08:38,549 --> 00:08:42,309 154 00:08:42,309 --> 00:08:45,870 >> Wel, OK, rydym wedi dysgu newydd sgiliau oer, beth yw'r pwynt? 155 00:08:45,870 --> 00:08:49,560 Efallai nad ydym yn defnyddio hyn i gyd y amser, gan ein bod yn mynd i weld cyn bo hir, 156 00:08:49,560 --> 00:08:52,370 rydym yn defnyddio hecsadegol eithaf llawer fel rhaglenwyr. 157 00:08:52,370 --> 00:08:55,060 Ddim o reidrwydd ar gyfer y pwrpas o wneud mathemateg ag ef, 158 00:08:55,060 --> 00:08:58,470 ond am fod llawer o weithiau cyfeiriadau cof yn ein system 159 00:08:58,470 --> 00:09:00,440 cael eu cynrychioli yn hecsadegol. 160 00:09:00,440 --> 00:09:04,390 Mae'n ffordd wirioneddol cryno i fynegi rhifau fel arall yn feichus, deuaidd. 161 00:09:04,390 --> 00:09:06,440 Ac felly, unwaith eto, efallai y byddwch not-- mae'n debyg eich bod 162 00:09:06,440 --> 00:09:07,640 Nid yw mynd i wneud unrhyw mathemateg ag ef, nid ydych yn 163 00:09:07,640 --> 00:09:09,848 mynd i fod yn lluosi rhifau hecsadegol gyda'i gilydd, 164 00:09:09,848 --> 00:09:11,770 neu wneud unrhyw beth 'n annaearol fel' na. 165 00:09:11,770 --> 00:09:16,120 Ond mae'n sgil ddefnyddiol cael er mwyn i chi fynegi a deall 166 00:09:16,120 --> 00:09:23,290 cyfeiriadau cof, ac eraill ffyrdd o ddefnyddio data yn C. 167 00:09:23,290 --> 00:09:26,240 >> Rwy'n Doug Lloyd, mae hyn yn CS50. 168 00:09:26,240 --> 00:09:28,028