1 00:00:07,220 --> 00:00:09,290 [Powered by Google Translate] NATE HARDISON: Šajā video par bināro, mēs parādīsim, kā 2 00:00:09,290 --> 00:00:12,540 pārstāvēt kopumu veseliem skaitļiem, no nulles uz augšu, 3 00:00:12,540 --> 00:00:15,110 izmantojot tikai ciparus nulli un vienu. 4 00:00:15,110 --> 00:00:17,890 Šajā video, mēs spēsim izmantot bināro skaitīšanas līdz 5 00:00:17,890 --> 00:00:21,160 pārstāv tekstu, burtus un tādas, kā arī. 6 00:00:21,160 --> 00:00:22,810 >> Kāpēc mēs apnikt to darīt? 7 00:00:22,810 --> 00:00:25,450 Nu, saskaņā ar kapuci, dators tikai patiešām 8 00:00:25,450 --> 00:00:29,070 saprot nullēm un tiem, bināro cipari, jo tie 9 00:00:29,070 --> 00:00:32,100 var pārstāvēt viegli ar elektromagnētisko lietām. 10 00:00:32,100 --> 00:00:35,040 >> Piemēram, domāju, ka datora atmiņā kā ilgtermiņa 11 00:00:35,040 --> 00:00:37,810 Virkne spuldzēm, jo ​​katra atsevišķā spuldze 12 00:00:37,810 --> 00:00:40,680 ir nulle, ja tas ir izslēgts, un viena 13 00:00:40,680 --> 00:00:42,230 ja tas ir ieslēgts. 14 00:00:42,230 --> 00:00:44,730 Tā vietā, izmantojot ķekars spuldzēm, daži mūsdienu 15 00:00:44,730 --> 00:00:46,990 atmiņu tas izmanto kondensatorus kas tur zems 16 00:00:46,990 --> 00:00:49,120 iekasēt pārstāvēt nulles un augstu lādiņu 17 00:00:49,120 --> 00:00:50,780 pārstāvēt vienu. 18 00:00:50,780 --> 00:00:52,510 >> Ir arī citas metodes, kā arī. 19 00:00:52,510 --> 00:00:55,500 Anyway, lai uzglabātu neko atmiņā, mums ir nepieciešams, lai 20 00:00:55,500 --> 00:00:57,590 vispirms konvertēt to kaut kas var reāli 21 00:00:57,590 --> 00:01:00,140 pārstāvētas fizisko aparatūru. 22 00:01:00,140 --> 00:01:02,450 Tāpēc pieņemsim domāt par to, kā mēs varētu pārstāvēt burtus ar 23 00:01:02,450 --> 00:01:04,230 binārā notācija. 24 00:01:04,230 --> 00:01:08,141 Angļu, mēs esam ieguvuši 26 burtus alfabēta, A, 25 00:01:08,141 --> 00:01:12,930 >> B, C, D un tā tālāk, līdz ar Z. Mēs varam piešķirt katram no 26 00:01:12,930 --> 00:01:16,650 Tie numuru, teiksim nulli līdz 25, un tad, izmantojot 27 00:01:16,650 --> 00:01:18,880 binārā notācija, mēs varam pārstāvēt katru numuru, 28 00:01:18,880 --> 00:01:20,890 secība nullēm un uzņēmumiem. 29 00:01:20,890 --> 00:01:22,420 Tas nav pārāk slikti. 30 00:01:22,420 --> 00:01:25,050 Tomēr, tas nav būs pietiekami. 31 00:01:25,050 --> 00:01:27,680 Ar šo sistēmu, mēs faktiski nevar atšķirt 32 00:01:27,680 --> 00:01:29,830 lielos un mazos burtus. 33 00:01:29,830 --> 00:01:32,140 Ja mēs vēlamies, lai mūsu datoru, lai varētu atšķirt 34 00:01:32,140 --> 00:01:36,020 abas lietas, tad mums ir nepieciešams papildus 26 numuriem. 35 00:01:36,020 --> 00:01:38,700 Un ko par periodiem, komatiem un 36 00:01:38,700 --> 00:01:40,390 citas pieturzīmes? 37 00:01:40,390 --> 00:01:43,560 >> Uz manu klaviatūru, es esam ieguvuši 32 no tiem, tostarp visa 38 00:01:43,560 --> 00:01:46,800 speciālās rakstzīmes, piemēram, caret un & zīmi. 39 00:01:46,800 --> 00:01:49,700 Tas nav skaitā ciparu rakstzīmes, nulles līdz deviņi, 40 00:01:49,700 --> 00:01:51,840 jo mēs joprojām vēlaties, lai varētu rakstīt skaitļus decimālā 41 00:01:51,840 --> 00:01:54,840 notation datorā, pat ja dators tikai patiešām 42 00:01:54,840 --> 00:01:57,830 saprot bināro notācija ar kapuci. 43 00:01:57,830 --> 00:02:00,620 >> Un visbeidzot, mums būs nepieciešams, lai pārstāvētu kosmosa raksturu, lai 44 00:02:00,620 --> 00:02:02,450 ka mūsu starpdevējs darbi. 45 00:02:02,450 --> 00:02:04,920 Tātad norādītas, kā pārstāvēt tekstu uz datora 46 00:02:04,920 --> 00:02:08,400 aizņem nedaudz vairāk nekā mēs varētu būt doma sākotnēji. 47 00:02:08,400 --> 00:02:11,710 Turklāt, pieņemt, mēs tam nāk klajā ar mūsu pašu kodējumu 48 00:02:11,710 --> 00:02:14,560 shēmu, lai pārstāvētu rakstzīmes kā skaitļi. 49 00:02:14,560 --> 00:02:17,470 Tomēr mēs nolēmām kodētu rakstzīmēm neizbēgami būs 50 00:02:17,470 --> 00:02:20,630 patvaļīgi, kā mēs redzējām agrāk, kad mēs runājām par izmantojot 51 00:02:20,630 --> 00:02:23,730 skaitļi nullei līdz 25, lai pārstāvētu burtus 52 00:02:23,730 --> 00:02:26,850 caur Z. Kāpēc ne izmantot 10 līdz 35, lai mēs varētu ietaupīt 53 00:02:26,850 --> 00:02:29,350 nulle caur deviņas cipars rakstzīmes? 54 00:02:29,350 --> 00:02:31,590 >> Nav īstais iemesls, mēs tikai izvēlējāmies neatkarīgi likās 55 00:02:31,590 --> 00:02:33,770 labākais mums. 56 00:02:33,770 --> 00:02:37,650 Atpakaļ sākumā 1960, tas bija reāla problēma. 57 00:02:37,650 --> 00:02:39,370 Dažādas datoru ražotāji izmantoja 58 00:02:39,370 --> 00:02:41,910 dažādas kodējuma shēmas, un tas padarīja saziņas 59 00:02:41,910 --> 00:02:44,340 starp dažādām mašīnām ļoti grūts uzdevums. 60 00:02:44,340 --> 00:02:47,810 Amerikas Valsts standartu institūts, ANSI, 61 00:02:47,810 --> 00:02:50,210 izveidoja komiteju, lai izstrādātu kopēju sistēmu. 62 00:02:50,210 --> 00:02:53,780 Un 1963, amerikāņu standarta kods informācijas 63 00:02:53,780 --> 00:02:58,600 Apmaiņas, vairāk pazīstams kā ASCII, bija piedzimis. 64 00:02:58,600 --> 00:03:01,360 >> ASCII bija paredzēta kā septiņu bitu kodējumu, kas 65 00:03:01,360 --> 00:03:03,800 nozīmē, ka katrs simbols pārstāv kombinējot 66 00:03:03,800 --> 00:03:06,070 septiņi nullēm un uzņēmumiem. 67 00:03:06,070 --> 00:03:09,670 Ar šīm divām iespējamām vērtībām, nulle vai viens, katrai 68 00:03:09,670 --> 00:03:14,040 no septiņām biti, ir divi ar septīto vai 128 69 00:03:14,040 --> 00:03:16,120 rakstzīmes, kas var attēlot ar ASCII 70 00:03:16,120 --> 00:03:18,140 kodēšanas shēmu. 71 00:03:18,140 --> 00:03:21,480 Tātad 128 rakstzīmes izklausās daudz, vai ne? 72 00:03:21,480 --> 00:03:24,180 Nu, atcerieties, ka ir 26 mazie burti 73 00:03:24,180 --> 00:03:29,260 Angļu, vēl 26 lielie burti, 10 ciparu zīmes, 74 00:03:29,260 --> 00:03:31,470 32 interpunkcijas un speciālās rakstzīmes, 75 00:03:31,470 --> 00:03:33,430 un vienu telpu raksturs. 76 00:03:33,430 --> 00:03:37,050 >> Tas liek mums pie 95, tāpēc mums ir vēl 33 rakstzīmes, ka mēs 77 00:03:37,050 --> 00:03:38,400 var pārstāvēt. 78 00:03:38,400 --> 00:03:39,900 >> Tātad kas ir pa kreisi? 79 00:03:39,900 --> 00:03:43,130 Nu, kas par attīstības ASCII, teletaipa dienu 80 00:03:43,130 --> 00:03:45,080 mašīnas, kas ir rakstāmmašīnas, kas tiek izmantoti, lai 81 00:03:45,080 --> 00:03:48,040 sūtīt ziņojumus visā tīklā, bija plaši izplatīta. 82 00:03:48,040 --> 00:03:50,030 Un šīs mašīnas bija papildu rakstzīmes izmantotas 83 00:03:50,030 --> 00:03:52,890 kontrolēt, piemēram, lai pastāstītu viņiem, kad, lai pārvietotu 84 00:03:52,890 --> 00:03:57,620 drukāt galvu uz leju līniju, līnijas barības vai jauna līnija atslēga, 85 00:03:57,620 --> 00:04:00,440 kad pāriet uz kreisās malas, pārvadājuma atgriešanās, 86 00:04:00,440 --> 00:04:04,890 vai vienkārši atgriezties taustiņu, un kad iet atpakaļ vienu telpu, 87 00:04:04,890 --> 00:04:07,760 atpakaļatkāpe raksturs, un tā tālāk. 88 00:04:07,760 --> 00:04:10,250 >> Šīs rakstzīmes sauc kontroles rakstzīmes, un viņi 89 00:04:10,250 --> 00:04:12,680 veido pārējo ASCII komplektu. 90 00:04:12,680 --> 00:04:15,230 Tātad, ja mēs skatāmies uz ASCII tabulu, mēs redzam, ka pirmās 91 00:04:15,230 --> 00:04:18,800 32 numuri, nulle līdz 31, ir rezervētas kontrolei 92 00:04:18,800 --> 00:04:20,200 rakstzīmes. 93 00:04:20,200 --> 00:04:23,420 Bet mēs tikai teica, ka tur bija 33 kontroles rakstzīmes. 94 00:04:23,420 --> 00:04:24,780 Kas par lietu? 95 00:04:24,780 --> 00:04:29,350 Nu, to skaits nulles un 127, pirmā un pēdējā no 96 00:04:29,350 --> 00:04:32,560 ASCII komplekts, kam ir īpašas bitu modeļus, visi nulles un visi 97 00:04:32,560 --> 00:04:34,710 tiem, attiecīgi. 98 00:04:34,710 --> 00:04:36,860 >> Par ASCII dizaineri nolēma, tāpēc, lai 99 00:04:36,860 --> 00:04:39,610 saglabātu šos skaitļus papildus speciālās rakstzīmes, 100 00:04:39,610 --> 00:04:43,310 proti null raksturs un DEL raksturs. 101 00:04:43,310 --> 00:04:46,340 Nulle un DEL bija paredzētas papīra lentes rediģēšanai, kas izmanto 102 00:04:46,340 --> 00:04:48,930 būt izplatītākais veids datu glabāšanai. 103 00:04:48,930 --> 00:04:51,850 Papīra lentes bija burtiski tikai garš sloksnes no papīra, un pēc 104 00:04:51,850 --> 00:04:53,760 regulāriem lentes, jūs perforators 105 00:04:53,760 --> 00:04:55,430 caurumi datu glabāšanai. 106 00:04:55,430 --> 00:04:58,720 Atkarībā no platuma lentes, katra kolonna būtu 107 00:04:58,720 --> 00:05:03,186 spēj uzņemt pieci, seši, septiņi, vai astoņi biti. 108 00:05:03,186 --> 00:05:05,930 >> Pārstāvēt nulles mazliet, jūs neko uz lenti, jūs 109 00:05:05,930 --> 00:05:07,930 vienkārši atstāt tukšu vietu. 110 00:05:07,930 --> 00:05:10,560 Par vienu bitu, jūs perforators caurumu. 111 00:05:10,560 --> 00:05:12,980 Nulles raksturs būtu vienkārši atstāt tukšu kolonnu, 112 00:05:12,980 --> 00:05:14,480 norādot visus nullēm. 113 00:05:14,480 --> 00:05:17,250 Un DEL raksturs būtu perforators kolonnas pilns ar caurumiem 114 00:05:17,250 --> 00:05:18,550 caur jūsu lenti. 115 00:05:18,550 --> 00:05:21,300 Tā rezultātā, jūs varētu izmantot DEL raksturs dzēst 116 00:05:21,300 --> 00:05:22,440 informācija. 117 00:05:22,440 --> 00:05:25,060 Iedomājieties, ņemot aizpildīta vēlēšanu balsošanu un pēc tam 118 00:05:25,060 --> 00:05:27,180 štancēšanas visas unpunched caurumus. 119 00:05:27,180 --> 00:05:29,410 >> Jums atspēkot balsošanu, jo tas ir neiespējami 120 00:05:29,410 --> 00:05:31,820 pateikt kādi sākotnējie balsu bija. 121 00:05:31,820 --> 00:05:34,720 Kamēr DEL raksturs joprojām tiek izmantota, ir mūsdienu 122 00:05:34,720 --> 00:05:37,980 Dzēst atslēgu, null raksturs nāca izmantot kā 123 00:05:37,980 --> 00:05:40,010 izbeigšanu C virknes raksturs un 124 00:05:40,010 --> 00:05:41,990 daži citi datu formāti. 125 00:05:41,990 --> 00:05:45,140 Jūs varētu zināt to kā slīpsvītru nulles raksturu, 126 00:05:45,140 --> 00:05:47,720 jo tas, kā mēs pārstāvam to rakstveidā. 127 00:05:47,720 --> 00:05:49,580 Tātad atpakaļ pie mūsu ASCII tabulu. 128 00:05:49,580 --> 00:05:52,770 Pēc pirmās 32 kontroles rakstzīmes nāk 95 129 00:05:52,770 --> 00:05:54,280 izdrukājamu rakstzīmes. 130 00:05:54,280 --> 00:05:55,800 >> Ir pāris atdzist dizains lēmumus vērts 131 00:05:55,800 --> 00:05:57,330 runājam par šeit. 132 00:05:57,330 --> 00:06:00,810 Pirmkārt, decimāls skaitlis rakstzīmes, nulle caur deviņi, 133 00:06:00,810 --> 00:06:04,050 atbilst skaitļiem 48 līdz 57, kas, šķiet, 134 00:06:04,050 --> 00:06:06,980 neizmainītai kamēr mēs skatāmies uz skaitļiem 48 līdz 57 135 00:06:06,980 --> 00:06:09,080 rakstīts binārā pierakstā. 136 00:06:09,080 --> 00:06:11,530 Ja mēs to darām, tad mēs redzam, ka ciparu raksturs, 137 00:06:11,530 --> 00:06:22,320 nulle, atbilst 0110000, viens kartes uz 0110001, divas 138 00:06:22,320 --> 00:06:26,640 0110010, un tā tālāk. 139 00:06:26,640 --> 00:06:27,950 Skatiet rakstu? 140 00:06:27,950 --> 00:06:30,170 Katrs cipars raksturs ir plānots tās atbilst 141 00:06:30,170 --> 00:06:35,170 ekvivalentu binārā pierakstā, prefiksu ar 011. 142 00:06:35,170 --> 00:06:38,820 Tālāk uz augšu, jūs ievērosiet, ka lielie burti sākas 65 gadu vecumā, 143 00:06:38,820 --> 00:06:41,310 ar lielo A, bet mazie burti 144 00:06:41,310 --> 00:06:43,010 neuzsāciet līdz 97. 145 00:06:43,010 --> 00:06:45,580 Tātad ir 32 atstarpes starp. 146 00:06:45,580 --> 00:06:47,000 Tas šķiet dīvaini. 147 00:06:47,000 --> 00:06:49,500 Tie ir tikai 26 burti alfabētā. 148 00:06:49,500 --> 00:06:51,410 >> Kāpēc sadalīt tos kā šis? 149 00:06:51,410 --> 00:06:53,960 Atkal, ja mēs skatāmies uz bināro pārstāvniecībās, mēs varam 150 00:06:53,960 --> 00:06:55,230 redzat modelis. 151 00:06:55,230 --> 00:07:01,360 Lielos pārstāv 1000001, un mazajiem ir 152 00:07:01,360 --> 00:07:05,810 pārstāv 1.100.001. 153 00:07:05,810 --> 00:07:12,770 Lielais B pārstāv 1000010, un mazie b ir 154 00:07:12,770 --> 00:07:17,280 pārstāv 1.100.010. 155 00:07:17,280 --> 00:07:19,440 Vai jūs varat pastāstīt, kas notiek šeit? 156 00:07:19,440 --> 00:07:22,470 Bit kas ir otrais no kreisās, jo diviem līdz 157 00:07:22,470 --> 00:07:26,510 piektdaļas, lai 32ths stāvoklī, ir 0 par visiem lielajiem burtiem 158 00:07:26,510 --> 00:07:30,120 vēstules, un par visiem mazajiem burtiem 1. 159 00:07:30,120 --> 00:07:33,130 >> Tas nozīmē, konvertējot no lielajiem uz mazajiem, un 160 00:07:33,130 --> 00:07:36,000 otrādi, ir jautājums par vienkāršu bitu uzsist. 161 00:07:36,000 --> 00:07:38,380 Tāpēc, ka mūs līdz beigām ASCII tabulā. 162 00:07:38,380 --> 00:07:40,700 Vai tu domā par kaut ko mēs esam aizmirsuši? 163 00:07:40,700 --> 00:07:42,510 Nu, ko par Spānijas enye, vai 164 00:07:42,510 --> 00:07:44,630 Grieķijas vai kirilicas alfabēta burtiem? 165 00:07:44,630 --> 00:07:46,610 Un kā par ķīniešu rakstzīmes? 166 00:07:46,610 --> 00:07:49,050 Tur daudz kas ir palikušas ārpus ASCII. 167 00:07:49,050 --> 00:07:51,920 Tomēr cits standarts sauc Unicode ir 168 00:07:51,920 --> 00:07:53,040 izstrādāta, lai segtu visus šos 169 00:07:53,040 --> 00:07:54,840 rakstzīmes un daudzas citas. 170 00:07:54,840 --> 00:07:57,040 >> Bet tas ir jautājums par citu laiku. 171 00:07:57,040 --> 00:07:58,500 Mans vārds ir Nate Hardison. 172 00:07:58,500 --> 00:08:00,650 Tas ir CS50.