1 00:00:00,000 --> 00:00:02,440 [Powered by Google Translate] [Week 7] 2 00:00:02,440 --> 00:00:04,730 [David J. Malan - Università ta 'Harvard] 3 00:00:04,730 --> 00:00:07,490 [Dan huwa CS50. - CS50.TV] 4 00:00:07,490 --> 00:00:12,280 Kull dritt. Merħba lura. Dan huwa CS50, u dan huwa l-bidu tal-ġimgħa 7. 5 00:00:12,280 --> 00:00:14,690 Koppja ta 'avviżi ftit: 6 00:00:14,690 --> 00:00:18,150 Pset5 issa hija fil-progress, jew dalwaqt se jkunu, 7 00:00:18,150 --> 00:00:21,590 u let me say, pjuttost onestament, dan ma għandhom tendenza li jkunu fost l-aktar ta 'sfida 8 00:00:21,590 --> 00:00:24,460 ta 'settijiet problema tal-kors, hekk let me jsemmi dan issa 9 00:00:24,460 --> 00:00:28,190 sabiex din il-ġimgħa aktar minn qatt qabel inti ma stenna sakemm, ngħidu, l-Erbgħa bil-lejl 10 00:00:28,190 --> 00:00:29,920 jew tal-lejl il-Ħamis li adsa pulzieri 11 00:00:29,920 --> 00:00:32,369 Dan huwa definittivament pset interessanti. Aħna naħsbu huwa gost. 12 00:00:32,369 --> 00:00:36,110 Jekk inti fil-fatt tikseb bis-sħiħ korrett u jista 'mbagħad tikkontesta l-Bord hekk imsejħa Big, 13 00:00:36,110 --> 00:00:39,830 inti ser ikollok l-opportunità biex jaqblu wits ma 'wħud mill-persunal tal-kors tal- 14 00:00:39,830 --> 00:00:41,620 u xi wħud klassi tiegħek. 15 00:00:41,620 --> 00:00:44,670 Liema Il-Bord Big huwa huwa ladarba inti għandek jespliċitaw-kontrollur xogħol tiegħek, 16 00:00:44,670 --> 00:00:48,860 inti ser tkun tista 'tmur cs50.net wara tmexxija ta' kmand, 17 00:00:48,860 --> 00:00:52,430 purament opt ​​in, u allura l-ammont ta 'ħin u l-ammont ta' RAM u aktar 18 00:00:52,430 --> 00:00:56,130 li inti użajt fl-implimentazzjoni tiegħek ser ikunu esibiti hawn fuq home-page-kors tal-. 19 00:00:56,130 --> 00:00:59,740 Int ser ikollok avviż li mazz sħiħ ta 'dawn folks hawn huma elenkati bħala staff 20 00:00:59,740 --> 00:01:04,220 peress li matul il-weekend, il-persunal ħsibt li jkun gost li jippruvaw outdo xulxin. 21 00:01:04,220 --> 00:01:07,390 Allura jirrealizzaw li l-għan hawnhekk huwa li ma outdo l-istaff. 22 00:01:07,390 --> 00:01:09,790 Anke jiena biss hawn fil-numru 13. 23 00:01:09,790 --> 00:01:13,790 Purament opt ​​in, iżda huwa opportunità biex tara kemm RAM ftit 24 00:01:13,790 --> 00:01:16,790 u kif ftit sekondi CPU tista 'tuża vis-a-vis xi klassi tiegħek. 25 00:01:16,790 --> 00:01:20,540 >> U jien ser jammettu li Schmid Michael Kevin, 26 00:01:20,540 --> 00:01:23,750 bħalissa fl-1 numru, pożizzjoni bħala waħda mill-TFS, 27 00:01:23,750 --> 00:01:28,120 dan huwa implimentazzjoni li nitolbu ma jkunx possibbli 28 00:01:28,120 --> 00:01:32,700 peress li hu użu kważi 0 RAM u kważi 0 sekondi għat-tagħbija. 29 00:01:32,700 --> 00:01:35,670 Allura aħna ser jieħdu ħsieb ta 'offline Kevin. [Daħk] 30 00:01:35,670 --> 00:01:40,950 Hemm ċerti ħiliet li Kevin huwa tqegħid għat-test hawn. 31 00:01:40,950 --> 00:01:45,280 Waħda mill-affarijiet ħsibna aħna'd tagħmel wisq issa hija CS50x huwa ġimgħa fil-progress, 32 00:01:45,280 --> 00:01:49,520 u inti guys huma kemm parti ta 'dan l-esperiment bħala dawk l-istudenti huma. 33 00:01:49,520 --> 00:01:53,720 Imxejna talbithom bħala parti mill pset0 tagħhom, li kien simili li jissottomettu proġett Scratch 34 00:01:53,720 --> 00:01:58,280 ta 'interess għalihom - logħba, biċċa interattiv ta' l-arti, animazzjoni, jew simili - 35 00:01:58,280 --> 00:02:03,700 ta '1 - video sa 2 minuti, jekk huma jixtiequ, qal bonjour lill-dinja u li huma attwalment huma. 36 00:02:03,700 --> 00:02:06,780 Ħsibt I d jaqsmu miegħek biss ftit mill-videos li ġew ippreżentati s'issa 37 00:02:06,780 --> 00:02:10,759 għaliex għalina, fuq il-persunal mill-inqas, huwa verament kien eċċitanti 38 00:02:10,759 --> 00:02:14,220 u jispira biex tara dawn folks minn madwar id-dinja - pajjiżi kollha madwar id-dinja - 39 00:02:14,220 --> 00:02:18,160 irfinar fi, tal-affarijiet kollha, għal kors xjenza tal-kompjuter fuq l-Internet, 40 00:02:18,160 --> 00:02:20,410 jekk huwa minħabba li jkunu jridu jkomplu l-istudji tagħhom, 41 00:02:20,410 --> 00:02:22,300 jkunu jridu jieħdu karrieri tagħhom f'direzzjoni ġdida, 42 00:02:22,300 --> 00:02:24,390 huma jridu jimlew il-lakuni fl-għarfien tagħhom stess, 43 00:02:24,390 --> 00:02:27,190 sabiex xi wħud mir-raġunijiet istess li inti guys forsi kienu hawn. 44 00:02:27,190 --> 00:02:31,090 >> So I jagħtuk waħda student bħal hawn. Inti tista 'tgħolli l-volum biss ftit. 45 00:02:31,090 --> 00:02:35,520 Hawnhekk huwa wieħed mill-istudenti tagħna 1-minuta sottomissjonijiet. 46 00:02:35,520 --> 00:02:40,380 Hello. Dinja, I am a student ta 'l-inġinerija industrijali hawn f'Malaga, Spanja. 47 00:02:40,380 --> 00:02:45,840 I am eċċitati dwar dan il-kors onlajn minħabba I love xjenza tal-kompjuter, I really do, 48 00:02:45,840 --> 00:02:48,880 u jien verament japprezzaw li niġi biex jesploraw dan. 49 00:02:48,880 --> 00:02:51,940 U l-fatt li I jistgħu jitgħallmu l-istess kollha inti guys do 50 00:02:51,940 --> 00:02:57,040 iżda minflok li jkunu fil-Harvard I am f'Malaga, kif biża huwa li? 51 00:02:57,040 --> 00:03:02,040 Well, I am Fernando, u dan huwa CS50. Ara inti guys. 52 00:03:02,040 --> 00:03:07,100 [Rires] Ieħor clip aħna partikolarment simili, inti ser issib li l-Ingliż dan il-gentleman hija mhux daqshekk qawwi. 53 00:03:07,100 --> 00:03:11,520 Jidher qisu kellu tradotti magna li, sabiex l-traduzzjonijiet nfushom huma daqsxejn imperfetta, 54 00:03:11,520 --> 00:03:15,790 iżda dan kien wieħed mill-favoriti tagħna s'issa kif ukoll. 55 00:03:25,080 --> 00:03:29,980 [♪ ♪] 56 00:03:29,980 --> 00:03:32,370 Hello. Dinja, [Jitkellem fil-Ġappuniż] 57 00:03:32,370 --> 00:03:39,830 [Għandi biex insellem fl-Ġappuniż minħabba l-Ingliż tiegħi hija ħafna affidabbli.] 58 00:03:39,830 --> 00:03:45,380 [I jkunu taw il-messaġġ li inti mill-belt ta 'Gifu, Ġappun.] 59 00:03:45,380 --> 00:03:49,820 [I jista 'jkun student għall-ewwel darba fl-20 sena, kif jista' jidher.] 60 00:03:49,820 --> 00:03:54,640 [I am very grat lejn Harvard University li tatni din l-opportunità u EDX.] 61 00:03:54,640 --> 00:04:01,510 [Golf hija kitarra u ħaġa favorit tiegħi running.] [Rires] 62 00:04:01,510 --> 00:04:05,750 [♪ ♪] 63 00:04:05,750 --> 00:04:10,790 [Għaliex taħseb I kien qed jipprova biex jattendu cs50x.] 64 00:04:10,790 --> 00:04:14,990 [Università ta 'Harvard, huwa longing tiegħi.] 65 00:04:14,990 --> 00:04:19,740 [Speċjalment jekk jiena preżenza bogħod għexet fil-Ġappun.] 66 00:04:19,740 --> 00:04:26,680 [I riedu jippruvaw immedjatament konxji tal-eżistenza ta 'tali EDX meta.] 67 00:04:26,680 --> 00:04:32,500 [Ma taħsibx sabiex inti ma relatata mal-età ta 'tagħlim I.] 68 00:04:32,500 --> 00:04:38,350 [Cs50 huwa longing tiegħi. Jisimni Kazu, u dan huwa cs50.] 69 00:04:38,350 --> 00:04:43,090 [♪ ♪] [applause u cheering] 70 00:04:43,090 --> 00:04:49,220 Ieħor favorit ta 'tagħna kienet din is-sottomissjoni hawn minn xi ħadd. 71 00:04:51,070 --> 00:04:55,380 [♪ ♪] [Malan] Google jekk int familjari ma 'dan même. 72 00:04:55,380 --> 00:05:01,480 >> U mbagħad fl-aħħar, koppja ta 'oħrajn li ltqajna stazzjonati li forsi tirbaħ il-premju adorable. 73 00:05:01,480 --> 00:05:06,820 [Studenti] AWW! >> [Malan] Aħna ser ikollhom biex tisma. Dan huwa qasir, sabiex jisimgħu mill-qrib. 74 00:05:08,580 --> 00:05:11,150 [Kelliem femminili] X'hemm isem tiegħek? >> Louie. 75 00:05:11,150 --> 00:05:16,120 [Kelliem femminili] X'hemm dan? >> [Giggles] CS50. [Daħk] 76 00:05:16,120 --> 00:05:19,510 [Malan] Hu ma 2 jieħu, għalkemm. 77 00:05:19,510 --> 00:05:22,240 Here we go, l-aħħar. 78 00:05:23,030 --> 00:05:26,980 Jisimni Louie, u dan huwa CS50. 79 00:05:26,980 --> 00:05:30,250 [Rires] Dan allura huwa CS50x. 80 00:05:30,250 --> 00:05:33,230 Grazzi lil dawk kollha minnkom waqt li ssegwi tul fid-dar 81 00:05:33,230 --> 00:05:35,620 li ġew parteċipazzjoni tagħhom f'kawża s'issa. 82 00:05:35,620 --> 00:05:39,510 Illum, aħna nikkonkludu diskussjoni tagħna ta 'strutturi tad-data, 83 00:05:39,510 --> 00:05:41,160 anqas uħud mill-aktar fundamentali, 84 00:05:41,160 --> 00:05:44,760 u allura aħna tkompli konversazzjoni tagħna dwar HTML u l-ipprogrammar tal-web. 85 00:05:44,760 --> 00:05:48,520 Tabilħaqq, aħna ħadthom jintefqu l-aħħar ftit ġimgħat 7 tħares lejn l-elementi fundamentali ta 'programmazzjoni - 86 00:05:48,520 --> 00:05:50,450 algoritmi, strutturi ta 'data, u simili - 87 00:05:50,450 --> 00:05:53,050 u C, kif jista 'jkollok esperjenza s'issa, 88 00:05:53,050 --> 00:05:57,060 mhuwiex neċessarjament l-aktar aċċessibbli tal-lingwi 89 00:05:57,060 --> 00:05:59,090 li biex timplimenta uħud minn dawn l-ideat. 90 00:05:59,090 --> 00:06:01,880 U hekk jibda din il-ġimgħa u ġimgħa d-dieħla u mbagħad dawn li ġejjin, 91 00:06:01,880 --> 00:06:07,110 aħna ser finalment ikunu jistgħu transizzjoni minn Ċ, li hija ġeneralment magħrufa bħala lingwa pjuttost ta 'livell baxx, 92 00:06:07,110 --> 00:06:11,190 għal affarijiet livell ogħla, fosthom PHP, JavaScript, u ​​simili, 93 00:06:11,190 --> 00:06:14,850 li aħna ser tara timxi fuq l-istess lezzjonijiet li aħna stajt tgħallmu matul l-aħħar ftit ġimgħat, 94 00:06:14,850 --> 00:06:19,430 imma inti ser issib li tiddikjara affarijiet simili matriċi u tabelli hash u tiftix u għażla 95 00:06:19,430 --> 00:06:23,370 tant sar ħafna aktar faċli minħabba li l-lingwi nfushom aħna ser tibda tuża 96 00:06:23,370 --> 00:06:25,290 se jsiru aktar qawwija. 97 00:06:25,290 --> 00:06:27,410 Iżda l-ewwel, applikazzjoni ta 'siġar. 98 00:06:27,410 --> 00:06:30,240 Huwa komuni ħafna f'dawn il-jiem li jeħtieġu li jikkompressa informazzjoni. 99 00:06:30,240 --> 00:06:34,770 F'liema kuntest kieku inti tixtieq li jikkompressa xi tip ta 'informazzjoni diġitali? 100 00:06:37,190 --> 00:06:39,670 >> Yeah. >> [Student] Meta għandek bżonn biex tibgħat fuq il-Web. 101 00:06:39,670 --> 00:06:41,450 Yeah, meta inti tixtieq li tibgħat xi ħaġa fuq il-Web. 102 00:06:41,450 --> 00:06:44,950 Jekk inti tixtieq li tniżżel fajl kbir, huwa ideali jekk xi ħadd fuq il-tarf l-ieħor 103 00:06:44,950 --> 00:06:48,760 ikun kompressata dan il-fajl bl-użu ta 'format zip jew xi ħaġa bħal dik 104 00:06:48,760 --> 00:06:53,760 sabiex int tibgħat bits inqas milli kieku jiġu trasmessi. 105 00:06:53,760 --> 00:06:55,500 Allura kif taħseb li jikkompressa-informazzjoni? 106 00:06:55,500 --> 00:07:00,540 Hija kollha jeħodna għall-użu bits inqas minn dawk meħtieġa mill-kontumaċja. 107 00:07:00,540 --> 00:07:03,220 Imma dan huwa tip ta 'ħaġa kurjużi għaliex taħseb lura għal ġimgħat 0 u 1 108 00:07:03,220 --> 00:07:07,370 meta tkellimna dwar ASCII u binarja u tkellimna dwar ASCII b'mod partikolari 109 00:07:07,370 --> 00:07:10,690 kif jużaw 8 bits biex jirrappreżentaw ittri tal-alfabett 110 00:07:10,690 --> 00:07:16,120 b'tali mod li l-ittra A huwa rappreżentat minn 65, zghar li huwa n-numru 97, 111 00:07:16,120 --> 00:07:21,210 u madankollu inti jirrappreżentaw il-65 jew 97, inti qed tuża 7 jew 8 bits. 112 00:07:21,210 --> 00:07:24,120 Iżda l-qabda hija li hemm xi ittri fl-alfabett Ingliż 113 00:07:24,120 --> 00:07:26,230 li mhumiex popolari kif oħrajn. 114 00:07:26,230 --> 00:07:31,600 Z hija mhux kollha li popolari, Q mhux kollha li popolari, iżda A u E huma super popolari. 115 00:07:31,600 --> 00:07:37,280 And yet għall kollha ta 'dawn l-ittri, awtomatikament id-dinja juża l-istess numru ta' bits, biss 8. 116 00:07:37,280 --> 00:07:42,690 Għalhekk ma kienx ikun ikun aktar intelliġenti kieku minflok jużaw 8 bits għal kull ittra, 117 00:07:42,690 --> 00:07:47,440 anke l-aktar spiss użati bħall Q u Z, 118 00:07:47,440 --> 00:07:51,910 dak jekk aħna użati bits inqas għal A u E u S u l-ittri l-aktar popolari 119 00:07:51,910 --> 00:07:55,000 u użati bits aktar għall-ittri anqas popolari, 120 00:07:55,000 --> 00:07:57,770 l-idea hija jottimizzaw ejja għall-każ komuni, 121 00:07:57,770 --> 00:08:01,160 li hija tema fix-xjenza tal-kompjuter ta 'tipprova li jottimizzaw dak li għaddej biex jiġri l-aktar 122 00:08:01,160 --> 00:08:05,310 u jqattgħu ftit ħin iktar, ftit spazju aktar fuq l-affarijiet li, yeah, jista 'jiġri 123 00:08:05,310 --> 00:08:07,680 iżda mhux neċessarjament bħala spiss. 124 00:08:07,680 --> 00:08:09,330 Mela ejja jieħdu l-eżempju. 125 00:08:09,330 --> 00:08:12,610 >> Ejja ngħidu li aħna rridu li encode informazzjoni pjuttost b'mod effiċjenti. 126 00:08:12,610 --> 00:08:15,090 Inti jista kibru jafu ftit xi ħaġa dwar kodiċi Morse, 127 00:08:15,090 --> 00:08:17,450 u odds huma inti ma taf il-kodiċi attwali, 128 00:08:17,450 --> 00:08:21,750 imma int tista 'recall li huwa mill-inqas din is-serje ta' tikek u daxxijiet. 129 00:08:21,750 --> 00:08:26,640 Din hija kodifikazzjoni pjuttost effiċjenti, u avviż li l-ittra l-aktar popolari - pereżempju, E - 130 00:08:26,640 --> 00:08:28,980 juża l-iqsar beeps. 131 00:08:28,980 --> 00:08:31,740 Morse code huwa kollha dwar ħoss ħoss-ħoss-ħoss-ħoss-ħoss-u ż-żamma tones 132 00:08:31,740 --> 00:08:34,799 jew għal perjodi qosra ta 'żmien jew perjodi twal ta' żmien. 133 00:08:34,799 --> 00:08:40,330 E, kif murija bis-dot, huwa ħoss qasir super, biss ħoss, u li tkun tirrappreżenta E. 134 00:08:40,330 --> 00:08:43,960 B'kuntrast, T tkun ħoss itwal, bħal ħoss [itawwal ħoss], 135 00:08:43,960 --> 00:08:45,710 u li jkun jirrappreżenta T. 136 00:08:45,710 --> 00:08:48,840 Imma dak li għadu pjuttost qasir għaliex, għall-kuntrarju, jekk inti tħares lejn Z, 137 00:08:48,840 --> 00:08:52,690 biex jesprimu Z inti tmur, ħoss ħoss [itwal ħoss], ħoss, ħoss [ħoss iqsar]. 138 00:08:52,690 --> 00:08:55,360 Allura huwa itwal għaliex dan huwa inqas komuni. 139 00:08:55,360 --> 00:08:58,150 Iżda l-gotcha hawnhekk hija li Morse code huwa daqsxejn difettuż 140 00:08:58,150 --> 00:09:00,610 f'dak mhuwiex immedjatament decodable. 141 00:09:00,610 --> 00:09:07,350 Per eżempju, ejja ngħidu li inti tisma 'fuq xi tmiem tal-ħoss tal-wajer [qasira], ħoss [twil]. 142 00:09:07,350 --> 00:09:12,480 What messaġġ ma I biss tirċievi? A dot u sing. Xi jfisser li jirrappreżenta? 143 00:09:12,480 --> 00:09:15,330 [Student] A. >> [Malan] Forsi. 144 00:09:15,330 --> 00:09:18,270 Jista 'jkun ukoll E segwit minn T. 145 00:09:18,270 --> 00:09:23,390 Fi kliem ieħor, kodiċi Morse, għalkemm tiggwida dan il-prinċipju jiġi ottimizzat l-każ kantuniera, 146 00:09:23,390 --> 00:09:26,250 ma tagħtix lok għal decodability immedjat. 147 00:09:26,250 --> 00:09:29,850 Dan huwa, il-bniedem li qed tisma 'jew jirċievu dawn tikek u daxxijiet 148 00:09:29,850 --> 00:09:34,540 għandha b'xi mod insemmu fejn il-pawżi huma bejn ittri, 149 00:09:34,540 --> 00:09:39,660 għaliex jekk inti ma tafx fejn dawk pawżi huma, inti tista 'jikkonfondi A għal ET jew viċi versa. 150 00:09:39,660 --> 00:09:43,880 >> Allura dak li jista inti tagħmel? Fil kodiċi Morse inti tista 'biss nieqaf bejn kull wieħed mill-ittri. 151 00:09:43,880 --> 00:09:47,660 Imma jieqaf huwa tip ta 'kontra l-punt kollu ta' tħaffif affarijiet up. 152 00:09:47,660 --> 00:09:52,880 Allura dak li jekk minflok aħna ħareġ bi code fejn ma kienx hemm din is-sitwazzjoni ħażina 153 00:09:52,880 --> 00:09:56,570 fejn E huwa prefiss, per eżempju, ta 'A - 154 00:09:56,570 --> 00:10:00,020 fi kliem ieħor, jekk nistgħu niżguraw li l-mudelli għadhom qosra għall-ittri popolari 155 00:10:00,020 --> 00:10:04,850 twil għall-ittri anqas popolari, iżda hemm ebda konfużjoni possibbli? 156 00:10:04,850 --> 00:10:08,930 Raġel mill-isem ta Huffman snin ilu vvinta din l-iskema msejħa Huffman kodifikazzjoni 157 00:10:08,930 --> 00:10:12,390 li attwalment tiggwida waħda mill-istrutturi tad-data konna qattgħu ftit ta 'żmien jitkellem dwar 158 00:10:12,390 --> 00:10:16,560 din il-ġimgħa li għaddiet, dik ta 'siġar, siġar binarji speċifikament - 159 00:10:16,560 --> 00:10:19,710 tifsira siġra binarju li m'għandhiex aktar minn 2 tfal. 160 00:10:19,710 --> 00:10:22,720 Hija għandha forsi tifel xellug, forsi tifel dritt, u din hija. 161 00:10:22,720 --> 00:10:26,510 Allura jissoponi biss għall-fini ta 'diskussjoni li xi ħadd irid jibgħat messaġġ 162 00:10:26,510 --> 00:10:31,270 li tidher bħal dan. Huwa nonsense sħiħ iżda huwa kompost minn As, Bs, Cs, Ds, u Es. 163 00:10:31,270 --> 00:10:34,890 U jekk inti fil-fatt għadd up kollha tal-Kif, Bs, Cs, DS, u Es 164 00:10:34,890 --> 00:10:36,870 u mbagħad iddividi l-għadd totali ta 'ittri, 165 00:10:36,870 --> 00:10:42,710 din it-tabella ftit hawn jgħid li 45% tal-ittri huma Es, 20% huma As, 166 00:10:42,710 --> 00:10:45,010 10% Bs, u oħrajn. 167 00:10:45,010 --> 00:10:47,330 Allura fi kliem ieħor, wieħed jassumi li l-sekwenza kkwotati hemmhekk 168 00:10:47,330 --> 00:10:49,080 huwa biss xi messaġġ li inti tixtieq li tibgħat. 169 00:10:49,080 --> 00:10:52,180 Dan jiġri li jkun nonsense biss hekk nistgħu nużaw bħala ittri ftit kemm jista 'jkun, 170 00:10:52,180 --> 00:10:55,220 imma hija tabilħaqq il-każ li jibqa 'lE-aktar popolari, 171 00:10:55,220 --> 00:11:01,450 u B u C huma l-inqas popolari, mill-inqas ta 'dawn l-ittri 5 tat-alfabett. 172 00:11:01,450 --> 00:11:04,040 Allura kif nistgħu tmur dwar ġejjin bi kodifikazzjoni, 173 00:11:04,040 --> 00:11:08,430 a kodifikazzjoni binarju, mudell ta '0s u 1s għal kull wieħed minn dawn l-ittri 174 00:11:08,430 --> 00:11:14,820 b'tali mod li E huwa mudell qasir u forsi B u Ċ huma mudelli ftit itwal, 175 00:11:14,820 --> 00:11:19,270 għal darb'oħra, l-idea hija li aħna rridu li jużaw bits inqas maġġoranza tal-ħin 176 00:11:19,270 --> 00:11:21,790 u l-bits aktar biss darba fil-waqt. 177 00:11:21,790 --> 00:11:26,070 Skond Huffman kodifikazzjoni, inti tista 'toħloq foresti ta' siġar. 178 00:11:26,070 --> 00:11:31,190 Hemm tip ta 'linja storja hawn li jinvolvi siġar u wkoll il-proċess ta' bini iwettquhom. 179 00:11:31,190 --> 00:11:32,420 Ejja tibda. 180 00:11:32,420 --> 00:11:36,140 >> Nipproponi li tibda ma 'dan tal-foresti, biex ngħidu hekk, ta' 5 siġar, 181 00:11:36,140 --> 00:11:38,260 kull wieħed minnhom hija siġra pretty stupid. 182 00:11:38,260 --> 00:11:42,800 Is-siġra hija komposta minn sempliċiment node wieħed, kif irrappreżentat hawn minn ċirku. 183 00:11:42,800 --> 00:11:45,310 Allura kull wieħed minn dawn l-affarijiet jista 'jkun Struct C 184 00:11:45,310 --> 00:11:50,200 u ġewwa ta 'l-Struct C tista' tkun float li jirrappreżenta l-għadd tal-frekwenza 185 00:11:50,200 --> 00:11:52,510 u mbagħad forsi char li jirrappreżenta l-ittra. 186 00:11:52,510 --> 00:11:56,470 Allura taħseb dawn in-nodi bħala biss xi Struct C antiki iżda, għal issa, livell ogħla. 187 00:11:56,470 --> 00:12:01,230 Din hija foresti ta 'siġar 5, b'kull wieħed minn li jkollhom biss node wieħed. 188 00:12:01,230 --> 00:12:06,830 X'inhu Huffman propost huwa li nibdew biex jgħaqqdu dawk is-siġar 189 00:12:06,830 --> 00:12:11,140 li jkollhom l-għadd ta 'frekwenzi iżgħar fis-siġar kemmxejn akbar 190 00:12:11,140 --> 00:12:13,490 billi jorbothom ma 'node għerq ġdid. 191 00:12:13,490 --> 00:12:17,560 Allura fost l-ittri hawn, avviż li għall-konvenjenza stajt magħżula minnhom mix-xellug għal-lemin, 192 00:12:17,560 --> 00:12:21,420 għalkemm dan mhux strettament neċessarju, u l-avviż li n-nodi iżgħar 193 00:12:21,420 --> 00:12:23,930 Bħalissa 10% u 10%. 194 00:12:23,930 --> 00:12:28,940 Allura Huffman propost li aħna jingħaqdu ta'dawk il-lymph 2 iżgħar ġo siġra ġdida 195 00:12:28,940 --> 00:12:34,450 bl-introduzzjoni ta node ġenitur ġdid u mbagħad tagħti dak il-ġenitur tifel xellug u wild dritt 196 00:12:34,450 --> 00:12:37,720 fejn B hija arbitrarju fuq ix-xellug u C hija arbitrarjament il-lemin. 197 00:12:37,720 --> 00:12:41,590 U mbagħad Huffman propost ukoll li ejja issa just think tal-wild xellug 198 00:12:41,590 --> 00:12:44,790 f'waħda minn dawn is-siġar dejjem bħala li qiegħed ikun rappreżentat minn 0 199 00:12:44,790 --> 00:12:47,890 u l-wild dritt dejjem bħala rappreżentata mill-numru 1. 200 00:12:47,890 --> 00:12:50,680 >> Ma jimpurtax jekk inti flip lilhom sakemm int konsistenti. 201 00:12:50,680 --> 00:12:54,650 Allura issa għandna erba 'siġar fil-foresti dan. 202 00:12:54,650 --> 00:12:58,050 U jien ngħid 4 minħabba li issa l-siġra fuq ix-xellug - 203 00:12:58,050 --> 00:13:00,570 u mhuwiex daqstant siġra fis-sens li tikber b'dan il-mod, 204 00:13:00,570 --> 00:13:05,170 huwa aktar simili siġra tal-familja fejn issa l-0.2 huwa tip tal-ġenitur tat-tfal 2 - 205 00:13:05,170 --> 00:13:07,930 tinnota li f'dak il-ġenitur konna mfassla 0.2. 206 00:13:07,930 --> 00:13:13,370 Imxejna miżjud l-għadd ta 'frekwenzi tat-żewġt itfal u minħabba l-node ġdid is-somma totali. 207 00:13:13,370 --> 00:13:15,310 Allura issa aħna biss irrepeti dan il-proċess. 208 00:13:15,310 --> 00:13:19,490 Sib il-lymph 2 iżgħar u mbagħad għaqqadhom ġo siġra ġdida 209 00:13:19,490 --> 00:13:21,380 u mbagħad irrepeti l-proċess ulterjuri. 210 00:13:21,380 --> 00:13:26,390 Dritt issa għandna kandidati ftit, 20%, 15%, u ieħor ta '20%. 211 00:13:26,390 --> 00:13:29,780 F'dan il-każ, għandna biex jiksru r-rabta. Nistgħu nagħmlu dan b'mod arbitrarju. 212 00:13:29,780 --> 00:13:31,540 Għandna biss tagħmel dan b'mod konsistenti. 213 00:13:31,540 --> 00:13:33,760 F'dan il-każ, jien ser arbitrarju jmorru mal-wieħed fuq ix-xellug, 214 00:13:33,760 --> 00:13:39,880 u jien issa jingħaqdu l-20% u l-15% li tagħti me ġenitur ġdid imsejjaħ 35%, 215 00:13:39,880 --> 00:13:46,310 li xellug tifel huwa 0, li d-dritt tat-tfal hija l-1, u issa għandna biss tliet siġar fil-foresti. 216 00:13:46,310 --> 00:13:47,960 Tista 'forsi tara fejn dan ikun għaddej. 217 00:13:47,960 --> 00:13:51,150 Jekk aħna irrepeti dan darbiet koppja aktar, aħna qed tmur biex ikollhom wieħed biss siġra akbar, 218 00:13:51,150 --> 00:13:53,900 kollha ta 'truf tagħhom ikunu tikkettjati bl 0s u 1s. 219 00:13:53,900 --> 00:13:55,710 Ejja nagħmlu dan mill-ġdid. 220 00:13:55,710 --> 00:14:02,600 35% huwa għerq li siġra tal-. 20% u 45%, hekk aħna qed tmur biex jingħaqdu l-35% u 20%. 221 00:14:02,600 --> 00:14:05,610 Issa għandna din is-siġra hawn. Aħna żid flimkien, għandna 55%. 222 00:14:05,610 --> 00:14:07,910 Issa hemm biss żewġ siġar fil-foresti. 223 00:14:07,910 --> 00:14:11,900 Aħna nagħmlu dan darba finali, u nisperaw matematikament il-frekwenzi kollha jammontaw 224 00:14:11,900 --> 00:14:15,570 għaliex huma għandhom peress li aħna ikkalkulat mis-nikseb-go li jammontaw għal 100%. 225 00:14:15,570 --> 00:14:17,960 U issa aħna għandna waħda siġra. 226 00:14:17,960 --> 00:14:20,580 Allura dan huwa siġra kodifikazzjoni Huffman. 227 00:14:20,580 --> 00:14:24,400 Huwa tip ta 'ħadet filwaqt li naslu s'hemm bil-fomm, iżda r-realtà hija bil għar loop 228 00:14:24,400 --> 00:14:27,620 jew ma 'funzjoni jirrikorri, inti tista' tibni dan ħaġa up pretty fast. 229 00:14:27,620 --> 00:14:32,440 Allura issa aħna għandna waħda node ġdid, u kollha ta 'dawn in-nodi ta' ġewwa malloc'd, 230 00:14:32,440 --> 00:14:34,690 preżumibbilment, tul it-triq. 231 00:14:34,690 --> 00:14:38,650 Allura issa fil-quċċata ta 'din is-siġra għandna 100%, iżda issa avviż għandna triq 232 00:14:38,650 --> 00:14:43,780 minn dan il-ġdid kbira-kbira-kbira-nanniet kollha ta 'l-kbir' great-kbira-neputijiet 233 00:14:43,780 --> 00:14:45,930 it-triq kollha fil-qiegħ, għall kollha tal-weraq. 234 00:14:45,930 --> 00:14:52,840 >> Dak li aħna qed tmur biex tagħmel issa huwa jipproponi li sabiex jirrappreżentaw l-ittra E, 235 00:14:52,840 --> 00:14:55,670 aħna se sempliċement jużaw in-numru 1. Għaliex? 236 00:14:55,670 --> 00:15:01,000 Għaliex jekk aħna travers din is-siġra mill-għeruq finali l isfel għall-werqa magħrufa bħala E, 237 00:15:01,000 --> 00:15:06,050 aħna isegwu waħda biss tarf, ix-xifer dritt, u li l-ittikjati tal-kors fl-1 kantuniera. 238 00:15:06,050 --> 00:15:11,550 Allura l-implikazzjoni hawn għall Huffman kienet li kodifikazzjoni E fl binarju għandu jkun biss 1. 239 00:15:11,550 --> 00:15:14,490 U li pretty kkritikat effiċjenti. Ma jistgħux verament jiksbu kwalunkwe iżgħar minn dak. 240 00:15:14,490 --> 00:15:18,350 B'kuntrast, A se tkun rappreżentata, jekk inti ssegwi l-loġika, 241 00:15:18,350 --> 00:15:21,610 minn dak li mudell ta 'bits minflok? 01. 242 00:15:21,610 --> 00:15:25,500 Allura biex jiksbu A, nibdew l-għerq u immorru xellug u mbagħad immorru dritt, 243 00:15:25,500 --> 00:15:28,580 li jfisser li aħna segwew 0 u mbagħad 1. 244 00:15:28,580 --> 00:15:32,810 Allura aħna għandha tirrappreżenta l-ittra A il-mudell 0 u 1. 245 00:15:32,810 --> 00:15:36,010 U issa avviż li diġà għandna proprjetà ta 'decodability immedjat 246 00:15:36,010 --> 00:15:38,090 li aħna ma kellhiex fil-kodiċi Morse. 247 00:15:38,090 --> 00:15:42,840 Anke jekk dawn iż-żewġ mudelli huma pjuttost qasir - E huwa 1 bit, A huwa ta '2 bits - 248 00:15:42,840 --> 00:15:45,080 avviż li ma jistgħux jiġu konfużi waħda jew l-oħra, 249 00:15:45,080 --> 00:15:54,870 għaliex jekk inti tara 1 huwa ltqajna biex tkun E, jekk tara 0 imbagħad 1 huwa ovvjament ltqajna biex tkun A. 250 00:15:54,870 --> 00:15:58,410 Bl-istess mod, x'hemm D? 001. 251 00:15:58,410 --> 00:16:01,440 X'inhu C? 0001. 252 00:16:01,440 --> 00:16:05,320 U dak li huwa B? 0000. 253 00:16:05,320 --> 00:16:09,550 U għal darb'oħra, minħabba kollha ta 'l-ittri we care about huma fil-weraq 254 00:16:09,550 --> 00:16:13,890 u ħadd minnhom huma tip ta 'intermedjarji fil-passaġġ mill-għeruq għall-weraq, 255 00:16:13,890 --> 00:16:18,760 hemm l-ebda riskju ta 'conflating encodings differenti 2 ittri " 256 00:16:18,760 --> 00:16:22,300 minħabba kollha ta 'dawn it-tendenzi bit huma deterministic. 257 00:16:22,300 --> 00:16:25,280 0000 dejjem se jkun B. 258 00:16:25,280 --> 00:16:29,480 M'hemm l-ebda node x'imkien bejniethom li inti tista 'jikkonfondi ittra waħda għall-oħra. 259 00:16:29,480 --> 00:16:31,150 Allura x'inhu l-implikazzjoni hawnhekk? 260 00:16:31,150 --> 00:16:35,080 >> L-ittra l-aktar popolari - f'dan il-każ E - gotten l-kodifikazzjoni iqsar, 261 00:16:35,080 --> 00:16:37,430 A gotten l-kodifikazzjoni li jmiss iqsar, 262 00:16:37,430 --> 00:16:41,390 u B u C, li aħna diġà jafu mill-tip get-go kienu ta 'l-inqas popolari 263 00:16:41,390 --> 00:16:45,390 fi frekwenza ta '10% kull wieħed, huma gotten-kodifikazzjoni itwal. 264 00:16:45,390 --> 00:16:49,410 U għalhekk dak li dan ifisser issa huwa li jekk inti tixtieq li jibgħat messaġġ li l-kompressata 265 00:16:49,410 --> 00:16:51,950 fuq l-Internet jew email jew simili, 266 00:16:51,950 --> 00:16:56,730 milli jużaw ASCII standard, tista 'tibgħat messaġġ Huffman kodifikata 267 00:16:56,730 --> 00:17:01,720 fejn jekk inti tixtieq li tibgħat l-ittra E, inti tibgħat biss daqsxejn waħda. 268 00:17:01,720 --> 00:17:05,680 Jekk inti tixtieq li tibgħat A, inti tibgħat 2 bits, 01, minflok jibgħat 8 bits 269 00:17:05,680 --> 00:17:10,190 segwit minn ieħor bits 8 segwit minn ieħor bits 8 u ibqa 'sejjer hekk. 270 00:17:10,190 --> 00:17:11,940 Iżda hemm gotcha hawn. 271 00:17:11,940 --> 00:17:17,079 Huwa mhux biżżejjed li sempliċiment jinbena din is-siġra u mbagħad tibda tibgħat mill Alice sa Bob 272 00:17:17,079 --> 00:17:20,010 il-mudell bit iqsar, spag minn ASCII, 273 00:17:20,010 --> 00:17:23,140 minħabba Alice għandu wkoll jinforma lill Bob ta 'dak li 274 00:17:23,140 --> 00:17:26,880 jekk Bob huwa se jkun kapaċi li jaqra messaġġ kompressata tagħha? 275 00:17:26,880 --> 00:17:30,770 [Inaudible student rispons] >> X'hemm li? 276 00:17:30,770 --> 00:17:32,310 [Inaudible student rispons] >> Tal dak l-siġra. 277 00:17:32,310 --> 00:17:35,160 Jew saħansitra aktar speċifiku, liema huma dawk encodings huma, 278 00:17:35,160 --> 00:17:39,010 speċjalment peress matul din l-istorja għamilna sejħa sentenza fuq punt wieħed. 279 00:17:39,010 --> 00:17:43,640 Ftakar li kellna pick arbitrarjament bejn il-2 lymph differenti 20%? 280 00:17:43,640 --> 00:17:49,800 Allura huwa mhux il-każ li Bob, ir-riċevitur, tista 'sempliċement tibni mill-ġdid is-siġra fuq tiegħu stess 281 00:17:49,800 --> 00:17:53,390 għaliex forsi hu se toħloq l-siġra dejjem hekk ftit differenti mill Alice. 282 00:17:53,390 --> 00:17:56,670 Barra minn hekk, Bob lanqas taf x'inhi l-messaġġ oriġinali huwa 283 00:17:56,670 --> 00:18:00,770 minħabba li l-unika ħaġa Alice hija li jibgħat lilu, naturalment, huwa l-messaġġ kompressata. 284 00:18:00,770 --> 00:18:05,900 >> Allura l-qabda bil-kompressjoni bħal dan huwa li, iva, Alice tista 'tiffranka ħafna kollu ta' bits 285 00:18:05,900 --> 00:18:09,900 billi jibgħat 1 għall E u 01 għal A u oħrajn, 286 00:18:09,900 --> 00:18:15,180 iżda hi wkoll trid tinforma Bob dak l-immappjar huwa bejn l-ittri u l-bits 287 00:18:15,180 --> 00:18:19,620 minħabba li ma jistgħux b'mod ċar tistrieħ biss fuq ASCII aktar jekk aħna ma tkunx qed tużah ASCII. 288 00:18:19,620 --> 00:18:22,200 Hekk hi tista 'jew tibgħatlu-siġra b'xi - 289 00:18:22,200 --> 00:18:26,600 iktibha, jaħżnu bħala data binarja jew xi ħaġa bħal dik - 290 00:18:26,600 --> 00:18:30,280 jew biss tibgħatlu folja iqarrqu ftit, fajl Excel, li juri l-mappings. 291 00:18:30,280 --> 00:18:36,480 Allura l-effettività ta 'kompressjoni verament tassumi li l-messaġġi li int tibgħat 292 00:18:36,480 --> 00:18:40,230 huma pjuttost kbar, għall-inqas ta 'daqs medju, 293 00:18:40,230 --> 00:18:42,180 għaliex jekk int tibgħat messaġġ qasir super, 294 00:18:42,180 --> 00:18:45,390 jekk inti biss trid tibgħat il-messaġġ BAD, li jiġri li jkun kelma nistgħu jespliċitaw hawn, 295 00:18:45,390 --> 00:18:49,550 B-A-D, int probabilment ser tuża bits inqas, 296 00:18:49,550 --> 00:18:53,130 iżda l-qabda hija jekk inti jkollok ukoll biex tinforma Bob dak l-siġra 297 00:18:53,130 --> 00:18:57,530 jew x'inhuma dawn encodings huma, int ser probabbilment jissuperaw kollha ta 'l-iffrankar 298 00:18:57,530 --> 00:19:00,110 ta 'wara l-affarijiet kompressata li tibda bil. 299 00:19:00,110 --> 00:19:02,210 Allura jkun jista 'effettivament ikun il-każ li jekk inti tipprova kompressjoni 300 00:19:02,210 --> 00:19:05,330 anke ma 'xi ħaġa simili formati zip file jew inti jista' jkun familjari ma '- 301 00:19:05,330 --> 00:19:07,780 fajls pretty żgħar, fajls anki vojta - 302 00:19:07,780 --> 00:19:10,930 kultant dawn il-fajls jistgħu jiksbu akbar u mhux iżgħar. 303 00:19:10,930 --> 00:19:14,320 Iżda realistikament, li jiġri biss għal daqsijiet tal-fajl żgħar, 304 00:19:14,320 --> 00:19:16,920 għalhekk mhuwiex ser jagħmel fajl gigabyte jkun 2 gigabytes; 305 00:19:16,920 --> 00:19:19,480 aħna qed verament jitkellem bytes jew biss kilobytes ftit. 306 00:19:19,480 --> 00:19:22,330 >> Xi programmi bħal zip huma intelliġenti biżżejjed biex tirrealizza li, 307 00:19:22,330 --> 00:19:24,590 "Inti se jqattgħu bits aktar kompressjoni dan." 308 00:19:24,590 --> 00:19:27,460 "Let me ma jolqot kompressjoni dan għalik fil-livelli kollha." 309 00:19:27,460 --> 00:19:30,160 Allura dan huwa biss mod wieħed imbagħad ta 'kompressjoni format ta' test. 310 00:19:30,160 --> 00:19:32,300 Aħna jista 'jimplimenta xi ħaġa bħal din fl C. 311 00:19:32,300 --> 00:19:35,370 Per eżempju, hawnhekk hija kif nistgħu jirrappreżentaw node f'dan siġra 312 00:19:35,370 --> 00:19:39,320 fejn għandna char għall-simbolu, valur f'wiċċ l-ilma għall-frekwenza, 313 00:19:39,320 --> 00:19:42,250 u kif aħna stajt tidher ma 'strutturi oħra ta' data tagħna, 2 pointers, 314 00:19:42,250 --> 00:19:47,080 1 għall-wild xellug, 1 lejn il-lemin, jew li jistgħu jkunu NULL, 315 00:19:47,080 --> 00:19:50,850 imma jekk le, din tirreferi għal tifel xellug u tifel dritt. 316 00:19:50,850 --> 00:19:55,130 Allura dan allura huwa Huffman kodifikazzjoni, u huwa mod wieħed li inti tista 'tmur dwar kompressjoni informazzjoni, 317 00:19:55,130 --> 00:19:57,880 u huwa ċertament wieħed mill-aktar faċli biex jiġi implimentat 318 00:19:57,880 --> 00:20:00,830 fil-kuntest ta ', ngħidu aħna, l-istrutturi tad-data fil-ġimgħa li għaddiet, 319 00:20:00,830 --> 00:20:03,250 għalkemm anki algoritmi aktar sofistikati jeżistu 320 00:20:03,250 --> 00:20:08,220 li tista 'tagħmel mutazzjonijiet aktar sofistikati ta' data tiegħek. 321 00:20:08,220 --> 00:20:11,640 Kwalunkwe mistoqsijiet imbagħad fuq siġar, siġar binarju, jew kompressjoni ta 'test? 322 00:20:11,640 --> 00:20:15,590 [Student] Hemm xi ambigwità, bħal jekk split [inaudible] in 01, 323 00:20:15,590 --> 00:20:19,160 allura 011 tkun ambigwa, id-dritt? 324 00:20:19,160 --> 00:20:22,730 [Inaudible] >> mistoqsija Tajba. Ambigwità. 325 00:20:22,730 --> 00:20:25,940 Let me tqassar billi jirreferu għall din l-istampa hawn. 326 00:20:25,940 --> 00:20:29,650 Minħabba li l-karattri inti kompressjoni, il-rappreżentazzjonijiet tal- 327 00:20:29,650 --> 00:20:32,850 b'definizzjoni ta 'din algoritmu dejjem jibqgħu l-weraq, 328 00:20:32,850 --> 00:20:41,870 int qatt ser aċċidentalment jużaw l-istess mudell ta 'bits għall-prefiss ta' ittri multipli. 329 00:20:41,870 --> 00:20:46,740 Allura fi kliem ieħor, int imħasseb dwar, li ħsejjes simili, ta 'ambigwità li tirriżulta 330 00:20:46,740 --> 00:20:51,580 fejn 001 jista 'jkun il-bidu ta' B jew il-bidu ta 'C jew xi ħaġa bħal dik. 331 00:20:51,580 --> 00:20:56,780 Iżda dan ma jistax ikun il-każ minħabba li l-avviż li kollha tal-ittri tal-alfabett aħna qed kodifikazzjoni 332 00:20:56,780 --> 00:20:58,290 huma fil-weraq. 333 00:20:58,290 --> 00:21:01,910 >> Il-ambigwità jista 'jqum biss, bħal fil-każ tal-kodiċi Morse, 334 00:21:01,910 --> 00:21:06,770 jekk, per eżempju, C kien x'imkien tul il-passaġġ mill-għeruq għal B. 335 00:21:06,770 --> 00:21:12,290 [Student] Dritt. Allura f'dak il-każ, jiġifieri A għandu 2 weraq. >> Say A għandu - Jgħidu li mill-ġdid. 336 00:21:12,290 --> 00:21:18,760 [Student] Say A għandu 2 weraq, F u G, u mbagħad G - >> Okay. Iżda ma jistax. 337 00:21:18,760 --> 00:21:23,230 A innifsu ma jistax ikollha l-weraq F u G għaliex dawk l-ittri F u G 338 00:21:23,230 --> 00:21:27,560 huma stess ikunu tħalli x'imkien lejn ix-xellug ta 'B jew id-dritt ta' E. 339 00:21:27,560 --> 00:21:28,900 Allura skond id-definizzjoni, dawn għandhom ikunu weraq. 340 00:21:28,900 --> 00:21:32,940 Inkella, int eżattament id-dritt, konna mhux solvuta l-problema li Morse code tiffaċċja. 341 00:21:32,940 --> 00:21:38,150 Good kwistjoni. Mistoqsijiet oħra? Kull dritt. 342 00:21:38,150 --> 00:21:42,050 Dan il-kunċett ta 'bits, jirriżulta aħna kellna qawwa kollha flimkien li aħna stajt ma attwalment użati 343 00:21:42,050 --> 00:21:44,200 meta wasal għall-manipulazzjoni dawn 0s u 1s. 344 00:21:44,200 --> 00:21:46,600 Aħna mistoqsi dwar dan fuq waħda mis-settijiet problema kmieni: 345 00:21:46,600 --> 00:21:52,340 jiġifieri, kif taħseb li tmur dwar jikkonvertu uppercase zghar li jew vice versa? 346 00:21:52,340 --> 00:21:55,460 Jew, b'mod aktar konkret, wieħed minn dawk psets 1 staqsa 347 00:21:55,460 --> 00:22:01,090 kemm bits do inti attwalment ikollhom flip sabiex ibiddel A sa zghar viċi versa a jew? 348 00:22:01,090 --> 00:22:05,580 Hawn tfakkira malajr ta 'dak 65 u 97 look like fil-binarju. 349 00:22:05,580 --> 00:22:08,060 U anki jekk din il-kwistjoni it-tip ta faded fil-memorja tiegħek, 350 00:22:08,060 --> 00:22:11,290 tista 'tara mill-ġdid hawnhekk li kemm bits jeħtieġ li jiġu flipped 351 00:22:11,290 --> 00:22:15,810 għall-bidla kapital A għal zghar a? Just wieħed. 352 00:22:15,810 --> 00:22:19,650 >> Huma biss differenti f'post wieħed, il-bit tielet mix-xellug. 353 00:22:19,650 --> 00:22:24,240 Billi A għandha 010, ftit li għandha 011. 354 00:22:24,240 --> 00:22:26,250 Allura b'xi, għandna bżonn biss tkun tista 'flip li ftit, 355 00:22:26,250 --> 00:22:29,410 u nistgħu mbagħad kapitalizzazzjoni jew zghar ittri. 356 00:22:29,410 --> 00:22:32,720 Aħna ghamilt dan fil-passat mill-fatt tuża jekk il-kondizzjonijiet 357 00:22:32,720 --> 00:22:35,930 u l-verifika jekk l-ittra huwa bejn il-kapital A u l-kapital Z, 358 00:22:35,930 --> 00:22:41,480 imbagħad outputs bħal A - a + 26 jew xi ħaġa bħal dik. 359 00:22:41,480 --> 00:22:46,130 You probabbilment ma bidla aritmetika għall-ittri tal-alfabett. 360 00:22:46,130 --> 00:22:49,270 Imma x'jiġri jekk nistgħu biss flip li ftit wieħed? 361 00:22:49,270 --> 00:22:59,080 Kif tista 'inti tmur dwar teħid jiswew 1 byte ta' bits, bits hekk 8 simili 01000001 u 01100001? 362 00:22:59,080 --> 00:23:03,170 Jekk kellek dawk il-mudelli ta 'bits, kif nistgħu tmur dwar tibdil biss waħda minnhom? 363 00:23:03,170 --> 00:23:07,610 X'jiġri jekk aħna jintroduċu bl-isfar hawn dan il-mudell ieħor ta 'bits? 364 00:23:07,610 --> 00:23:13,420 Jekk I jagħmlu l-0s kollha string isfar ħlief għall-ftit wieħed li nixtieq għall-bidla 365 00:23:13,420 --> 00:23:17,900 u mbagħad I jintroduċu operatur ġdid magħruf bħala operatur bitwise - 366 00:23:17,900 --> 00:23:21,210 bitwise fis-sens li jopera fuq bits individwali, 367 00:23:21,210 --> 00:23:25,360 mhux fuq byte kollu jew 4 bytes kollha f'daqqa. 368 00:23:25,360 --> 00:23:31,170 Dan bar vertikali hemm fl-isfar jissuġġerixxi li dak li jekk nieħdu r-rappreżentazzjoni tal-kapital A 369 00:23:31,170 --> 00:23:37,060 u bitwise JEW bl-sekwenza ta 'bits isfar? 370 00:23:37,060 --> 00:23:41,300 Fi kliem ieħor, think lura għad-diskussjoni tagħna ta 'espressjonijiet Boolean fil Scratch u mbagħad C. 371 00:23:41,300 --> 00:23:47,520 >> Jsir Boolean jew ifisser li biex ikunu vera, jew l-ewwel ħaġa trid tkun veru 372 00:23:47,520 --> 00:23:50,700 jew it-tieni ħaġa trid tkun vera jew tnejn li huma għandhom biex ikunu vera, 373 00:23:50,700 --> 00:23:53,270 u allura l-output li tirriżulta hija nnifisha veru. 374 00:23:53,270 --> 00:24:00,230 F'dan il-każ hawnhekk, dak li nagħmlu jekk nieħdu 0 "jew" ed bil 0? Falza jew falza? 375 00:24:00,230 --> 00:24:04,280 Huwa għadu falza, sabiex l-zghar a tibqa kif mistenni. 376 00:24:04,280 --> 00:24:07,540 X'jiġri jekk minflok nagħmlu 1 jew 0? 377 00:24:07,540 --> 00:24:12,640 Dan issa jibqa 1, imma avviż x'hemm sejjer iseħħ hawn. 378 00:24:12,640 --> 00:24:18,630 Jekk nibdew bil-kapital A u aħna tkompli "jew" bits individwali tiegħu kif aħna qed tagħmel hawn, 379 00:24:18,630 --> 00:24:25,180 0 jew l-waħda safra tagħtina dak stabbiliti hawn? Din tagħtina 1. 380 00:24:25,180 --> 00:24:35,120 Fil-fatt, ejja ngħidu aħna ma kinitx taf liema l-verżjoni uppercase ta 'ftit minn fatt kien. 381 00:24:35,120 --> 00:24:38,270 Ejja jmorru jagħmlu dan. Let me jimxu dan back hawn fuq. 382 00:24:38,270 --> 00:24:42,340 Ejja nagħmlu dan mill-ġdid. 0 jew 0 me tagħti 0. 383 00:24:42,340 --> 00:24:45,020 1 jew 0 me tagħti 1. 384 00:24:45,020 --> 00:24:48,020 0 jew 1 jagħti me 1. 385 00:24:48,020 --> 00:24:52,880 0 jew 0 me tagħti 0. Il-wieħed li jmiss huwa 0, dak li jmiss huwa 0, l-waħda li jmiss hija 0. 386 00:24:52,880 --> 00:24:55,660 1 jew 0 me tagħti 1. 387 00:24:55,660 --> 00:24:59,140 U hekk anke jekk aħna ma kinitx taf minn qabel liema zghar li kien, 388 00:24:59,140 --> 00:25:04,770 sempliċiment billi "jew" Ing A ma 'dan il-mudell ta' bits li aħna ve ppreżentati hawn fil isfar, 389 00:25:04,770 --> 00:25:09,400 inti tista zghar 'kapital A mill flipping li ftit. 390 00:25:09,400 --> 00:25:11,580 Aħna użati dan ġimgħat ilu espressjoni: flipping daqsxejn. 391 00:25:11,580 --> 00:25:13,710 Kif inti fil-fatt jagħmlu dan programmatically? 392 00:25:13,710 --> 00:25:16,390 Tuża dak li ġeneralment jissejjaħ 'maskra, sekwenza ta' bits, 393 00:25:16,390 --> 00:25:19,980 li f'dan il-każ biss hekk jiġri li look like dan in-numru hawn, 394 00:25:19,980 --> 00:25:22,980 u allura inti "jew" li flimkien jużaw dan l-operatur C ġdida, 395 00:25:22,980 --> 00:25:29,940 mhux | |, tuża waħda | u inti fil-fatt tikseb din it-tweġiba hawnhekk għaliex għaliex? 396 00:25:29,940 --> 00:25:35,120 Dan huwa l-post 1s, 2s post, 16s 4s, 8S,, 32S. 397 00:25:35,120 --> 00:25:42,280 Għalhekk jirriżulta li jekk inti tieħu ittra kapitali A u bitwise JEW ma 'l-32 numru sħiħ, 398 00:25:42,280 --> 00:25:47,520 minħabba li l-32 numru sħiħ, meta inti tħares lejn din bħala bits, qisu dan, 399 00:25:47,520 --> 00:25:50,860 dan ifisser li inti tista 'flip-ftit li inti fil-fatt tixtieq. 400 00:25:50,860 --> 00:25:52,630 U bl-istess mod - u aħna ser tħares lejn il-kodiċi fil-ftit mument - 401 00:25:52,630 --> 00:25:54,210 jissoponi irridu imorru l-direzzjoni oħra. 402 00:25:54,210 --> 00:25:58,210 >> Kif inti tmur minn zghar kapital lil A? Li ftit jeħtieġ li jinbidel? 403 00:25:58,210 --> 00:25:59,820 Hu l-istess waħda. 404 00:25:59,820 --> 00:26:03,970 Aħna tixtieq li bidla li ftit 3 minn 1 għal 0. 405 00:26:03,970 --> 00:26:06,310 U kif tista we go dwar kif isir dan? 406 00:26:06,310 --> 00:26:10,130 Kif nistgħu itfi daqsxejn? Bil liema mudell ta 'bits nistgħu itfi daqsxejn? 407 00:26:11,580 --> 00:26:14,070 X'jiġri jekk aħna sort tal invertit-maskra? 408 00:26:14,070 --> 00:26:17,350 Billi qabel, għamilna l-0s kollu maskra isfar 409 00:26:17,350 --> 00:26:19,930 ħlief għall-ftit 1 ridna li jduru fuq, 410 00:26:19,930 --> 00:26:25,580 dak jekk dan iż-żmien, nagħmlu l-1s maskra kollu ħlief għall-ftit li aħna rridu li itfi 411 00:26:25,580 --> 00:26:28,330 u mbagħad jużaw dak l-operatur? 412 00:26:28,330 --> 00:26:30,560 X'jiġri jekk aħna "u" affarijiet? Ejja tagħti ħarsa. 413 00:26:30,560 --> 00:26:34,880 Jekk aħna issa flip għal dan, jissoponi li għal darb'oħra I joħolqu maskra li kollox 1s 414 00:26:34,880 --> 00:26:37,650 ħlief għall-ftit wieħed li nixtieq li itfi 415 00:26:37,650 --> 00:26:43,860 u mbagħad minflok "jew" in-numri bojod up top bin-numri isfar isfel hawn, 416 00:26:43,860 --> 00:26:46,940 jekk dak I minflok "u" flimkien? Huwa sejjaħ għal bitwise u. 417 00:26:46,940 --> 00:26:49,450 Loġikament, huwa l-istess ħaġa bħala Boolean u. 418 00:26:49,450 --> 00:26:55,160 Dan jagħti me 0 & 1 hija 0. Allura falza u vera hija falza. 419 00:26:55,160 --> 00:26:58,160 True u vera huwa veru. 420 00:26:58,160 --> 00:27:04,020 U hawn huwa l-maġija: True u falza issa huwa falz, hekk aħna ve mitfija li ftit. 421 00:27:04,020 --> 00:27:06,560 U issa l-bqija ta 'l-istorja hija kemmxejn sempliċi. 422 00:27:06,560 --> 00:27:11,970 Minħabba li l-bqija tal-maskra hija 1s, ma jimpurtax liema n-numri huma fl-abjad. 423 00:27:11,970 --> 00:27:15,580 Meta inti "u" xi ħaġa ma 'veru, int mhux se jibdlu l-valur tagħha. 424 00:27:15,580 --> 00:27:20,200 Jekk huwa veru, se tibqa 'fidila. Jekk kien falz, se jibqa falza. 425 00:27:20,200 --> 00:27:23,190 >> Iżda l-magic jiġri meta inti tieħu xi ħaġa li kienet veru 426 00:27:23,190 --> 00:27:25,430 u int imbagħad "u" ma falza. 427 00:27:25,430 --> 00:27:30,030 Dan għandu l-effett ta 'tidwir off li ftit. 428 00:27:30,030 --> 00:27:31,980 Allura cryptic ftit hemmhekk. 429 00:27:31,980 --> 00:27:35,390 Ejja fil-fatt nħarsu lejn uħud kodiċi, li jista 'attwalment ħarsa aktar cryptic, 430 00:27:35,390 --> 00:27:38,220 imma ejja tagħti ħarsa hawn fuq tolower. 431 00:27:38,220 --> 00:27:45,880 Jekk I ħarsa lejn tolower, li jmorru mill-kapital A għal zghar a, 432 00:27:45,880 --> 00:27:47,730 ejja ara kif nistgħu timplimenta dan il-programm. 433 00:27:47,730 --> 00:27:51,280 Hawn prinċipali, u huwa mhux qed tieħu ebda argument kmand tal-linja. 434 00:27:51,280 --> 00:27:55,980 Jien tiddikkjara ċ karattru għall-ittra li l-utent se tip pulzieri 435 00:27:55,980 --> 00:28:00,690 I mbagħad jużaw do familjari filwaqt loop sabiex tagħmel ċert li l-utent definittivament tagħti me a kapitali A 436 00:28:00,690 --> 00:28:05,010 jew B jew Ċ .. Z, sabiex dawn jagħtu me xi ħaġa bejn A u Z. 437 00:28:05,010 --> 00:28:08,580 U issa dak li jien tagħmel hawn? 438 00:28:08,580 --> 00:28:14,870 Jien "jew" Ing dan ma 0x20, iżda li fil-fatt l-istess bħal - 439 00:28:14,870 --> 00:28:19,500 u aħna ser terga 'lura għal dan fil-mument - 32. 440 00:28:19,500 --> 00:28:24,830 Għalhekk għal darb'oħra, 32 huwa dan il-mudell ta 'bits hawn. Għaliex nafu dan? 441 00:28:24,830 --> 00:28:26,320 Aħsbu ftit lura għal ġimgħa 0. 442 00:28:26,320 --> 00:28:31,010 Dan huwa l-post 1s, 2s post, 4s, 8S, 16s, post 32S. 443 00:28:31,010 --> 00:28:33,470 Allura dan in-numru isfar jiġri li jkun 32. 444 00:28:33,470 --> 00:28:40,570 I jistgħu imbagħad jieħdu ittra bħall-char hawn, bitwise "jew" ma litteralment-numru 32, 445 00:28:40,570 --> 00:28:45,250 u dak nista 'nikseb lura? Il-verżjoni zghar ta 'dak char. 446 00:28:45,250 --> 00:28:48,830 A mument ilu, għalkemm, jiena espress dan fi notazzjoni bażi differenti. 447 00:28:48,830 --> 00:28:51,370 What did dan jirrappreżenta? >> [Student]. Hexadeċimali 448 00:28:51,370 --> 00:28:53,050 [Malan] Dan jiġri li jirrappreżenta hexadeċimali. 449 00:28:53,050 --> 00:28:55,170 Aħna ma tkellem dwar hexadecimal kollha li ħafna, 450 00:28:55,170 --> 00:28:57,330 iżda huwa attwalment konvenjenti fil-każijiet bħal dan. 451 00:28:57,330 --> 00:29:01,730 >> Anki jekk jidher aktar kumpless u anki jekk jidher qisu 20 u mhux 32, 452 00:29:01,730 --> 00:29:06,240 jirriżulta li hexadeċimali huwa attwalment notazzjoni konvenjenti super 453 00:29:06,240 --> 00:29:10,810 għaliex f'hexadecimal f'kull ċifri wara l-0x - u dan ifisser xejn; 454 00:29:10,810 --> 00:29:13,960 dan huwa biss il-konvenzjoni tal-bniedem li tgħid hawnhekk jidħol numru hexadeċimali - 455 00:29:13,960 --> 00:29:18,590 kull wieħed minn dawn numri, il-2 u allura l-0, nfushom jistgħu jkunu rappreżentati 456 00:29:18,590 --> 00:29:20,800 b'eżattament 4 bits. 457 00:29:20,800 --> 00:29:27,840 Mela jekk nagħmlu dan, let me tiftaħ editur test hawn - stramb AutoComplete - 458 00:29:27,840 --> 00:29:35,940 jekk nagħmlu editur test ftit hawn, il 0x20 numru ifisser hawnhekk huwa 4 bits, hawnhekk ieħor bits 4. 459 00:29:35,940 --> 00:29:38,050 Ejja nagħmlu l-lemini 4 bits ewwel. 460 00:29:38,050 --> 00:29:44,690 0 meta rappreżentati mal 4 bits huwa dak? Super faċli. Just kollha 0s. 461 00:29:44,690 --> 00:29:46,780 Allura 4 bits bħala 0s. 462 00:29:46,780 --> 00:29:53,510 Kif inti tirrappreżenta 2? Huwa kien filwaqt li peress li aħna ma dan, iżda huwa 0100. 463 00:29:53,510 --> 00:29:57,310 Allura dan huwa l-post 1s, dan huwa l-post 2s, u mbagħad ma jimpurtax dak li l-postijiet l-oħra huma. 464 00:29:57,310 --> 00:30:00,610 Fi kliem ieħor, f'hexadecimal inti jista 'jgħid 0x20, 465 00:30:00,610 --> 00:30:04,340 imma jekk inti mbagħad jaħsbu dwar dak huwa l-2 u kif huwa rappreżentat fil-binarju, 466 00:30:04,340 --> 00:30:07,130 dak li huwa l-0 u kif huwa rappreżentat fil-binarju, 467 00:30:07,130 --> 00:30:10,440 it-tweġibiet għal dawn id-domandi huma dan u dan rispettivament. 468 00:30:10,440 --> 00:30:14,380 Allura 0x20 jiġri li jirrappreżentaw dan il-mudell ta '8 bits, 469 00:30:14,380 --> 00:30:16,880 li huwa preċiżament il-maskra li ridna. 470 00:30:16,880 --> 00:30:20,140 Allura dan huwa l-mument eżatt eżerċizzju intellettwali, 471 00:30:20,140 --> 00:30:24,520 iżda r-realtà hija fil-kodiċi huwa tipikament aktar komuni li tikteb kostanti bħal dan 472 00:30:24,520 --> 00:30:28,360 f'hexadecimal għaliex imbagħad il-programmer tista relattivament faċilment, 473 00:30:28,360 --> 00:30:32,560 anki jekk jeħtieġ xi karta u lapes, ċifra barra dak li mudell ta 'bits hija 474 00:30:32,560 --> 00:30:35,960 għaliex inti tista 'mhux biss jesprimu 0s u 1s tipikament fil-kodiċi. 475 00:30:35,960 --> 00:30:38,540 Inti ma tistax tmur 00010 u oħrajn. 476 00:30:38,540 --> 00:30:42,380 >> Int għandek pick notazzjonijiet deċimali jew hexadeċimali jew octal jew oħra. 477 00:30:42,380 --> 00:30:47,540 Ħafna nies għandhom tendenza li jtellgħu hexadeċimali sempliċement sabiex kull ċifra tirrappreżenta 4 bits 478 00:30:47,540 --> 00:30:49,320 u inti tista 'tagħmel dan matematika malajr. 479 00:30:49,320 --> 00:30:54,990 U jien ser mewġa naħa tiegħi fil toupper, li huwa kważi l-istess; jidher kważi identiċi. 480 00:30:54,990 --> 00:31:01,900 Toupper jiġri li tuża mhux l-operatur jew iżda dan Guy u df. 481 00:31:01,900 --> 00:31:09,300 X'jagħmel df jirrappreżenta? df? Kulħadd? >> [Student] 255. 482 00:31:09,300 --> 00:31:12,780 255? Mhux 255. Dan ikun ff. 483 00:31:12,780 --> 00:31:15,210 Aħna ser tħalli dan wieħed bħala eżerċizzju ftit. 484 00:31:15,210 --> 00:31:23,460 Imma jekk inti tmur minn 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 u mbagħad dak li jiġi wara 9? 485 00:31:23,460 --> 00:31:26,510 Aħna tip ta 'barra ta' numri deċimali, imma f'hexadecimal dak li jiġi wara 9? 486 00:31:26,510 --> 00:31:29,510 [Student] a. >> Allura a, b, c, d. 487 00:31:29,510 --> 00:31:33,470 Tista 'ċifra barra minn hemm dak mudell ta' bits d attwalment jirrappreżenta. 488 00:31:33,470 --> 00:31:38,850 U jekk nagħmlu l-matematika, aħna ser tara li l-maskra inti tispiċċa jkollna lura huwa identiku għal dan. 489 00:31:38,850 --> 00:31:45,580 Dan huwa f, kollha 1s, u dan huwa d. Allura df jirrappreżenta dak maskra. Kull dritt. 490 00:31:45,580 --> 00:31:50,980 U fl-aħħarnett, biex ma tagħmel l-affarijiet ħoss super, super teknika, 491 00:31:50,980 --> 00:31:53,840 iżda jissoponi ridna li jiktbu program li ma dan. 492 00:31:53,840 --> 00:31:58,960 Let me imorru quddiem u jagħmlu binarju, li huwa programm fil-fajl imsejjaħ binary.c. 493 00:31:58,960 --> 00:32:02,050 U issa let me run binarja u jagħtu me numru sħiħ mhux negattiva. 494 00:32:02,050 --> 00:32:03,960 Nibdew faċli u t-tip fil-0. 495 00:32:03,960 --> 00:32:09,010 Dan issa huwa programm li tistampa integer fir-rappreżentazzjoni binarja tagħha. 496 00:32:09,010 --> 00:32:13,470 Mela jekk jien jilagħbu din il-logħba mill-ġdid u t-tip biss fl-1, I, għandhom jingħataw rappreżentazzjoni 32-daqsxejn ta '1. 497 00:32:13,470 --> 00:32:15,490 Jekk nagħmel dan mill-ġdid ma 2, I għandu tikseb dan. 498 00:32:15,490 --> 00:32:19,310 Jekk I do 7, I għandhom jiksbu 1s ftit fl-aħħar u oħrajn. 499 00:32:19,310 --> 00:32:22,740 Jirriżulta nsemmi dan għaliex ma 'operazzjonijiet bitwise 500 00:32:22,740 --> 00:32:25,490 inti tista 'attwalment tagħmel ħaġa waħda oħra kif ukoll. 501 00:32:25,490 --> 00:32:29,130 Tista 'toħloq dawn il-maskri dinamiku. 502 00:32:29,130 --> 00:32:32,800 Agħti ħarsa lejn dan l-eżempju waħda finali li jinvolvu operazzjonijiet bitwise. 503 00:32:32,800 --> 00:32:35,490 Hawn hu l-ewwel parti tal-kodiċi, fil-pront lill-utent għal numru, 504 00:32:35,490 --> 00:32:38,130 u jinsisti li inti tagħti me numru sħiħ mhux negattiva. 505 00:32:38,130 --> 00:32:39,780 Allura dak it-tip ta 'għalf iskola antika. 506 00:32:39,780 --> 00:32:41,980 Iżda hawnhekk hija xi ħaġa li l-tip ta 'interessanti. 507 00:32:41,980 --> 00:32:44,910 >> Kif nista tmur dwar l-istampar ta 'numru fil-binarju? 508 00:32:44,910 --> 00:32:48,970 I l-ewwel jtenni minn dak li xiex? 509 00:32:48,970 --> 00:32:52,270 X'hemm-daqs ta 'int tipikament, għall-inqas fil-appliance? >> [Student] 4. 510 00:32:52,270 --> 00:32:57,130 Huwa 4. Allura 4 * 8 huwa 32 - 1 huwa 31. 511 00:32:57,130 --> 00:33:02,590 Mela jekk jien jibdew jgħoddu minn 31, li tirrappreżenta, jirriżulta, 512 00:33:02,590 --> 00:33:07,630 biss kunċettwali, il-bit 31 jew il-bit ordni ogħla, li huwa dan Guy hawn fuq, 513 00:33:07,630 --> 00:33:09,650 billi dan se jkun ta '0 bit. 514 00:33:09,650 --> 00:33:12,850 Allura dan huwa daqsxejn 01 ... bit 31. 515 00:33:12,850 --> 00:33:14,950 Allura dak li huwa dan il-kodiċi tagħmel? 516 00:33:14,950 --> 00:33:20,140 Avviż dan għal loop, anki jekk jidher cryptic, huwa biss iterazzjoni minn 31 sa 0. Li minnu. 517 00:33:20,140 --> 00:33:24,530 Allura l-parti interessanti issa jridu jkunu f'dawn il-linji 5 hawn. 518 00:33:24,530 --> 00:33:28,110 Avviż li f'dan il-linja jien tiddikjara maskra varjabbli imsejjaħ 519 00:33:28,110 --> 00:33:30,790 tkun konsistenti ma 'l-istorja tagħna ta' dawn in-numri isfar. 520 00:33:30,790 --> 00:33:32,200 U allura dak li huwa dan isir? 521 00:33:32,200 --> 00:33:35,720 Dan huwa pass ieħor 'operatur bitwise aħna stajt ma rajna qabel, l-aktar probabbli. 522 00:33:35,720 --> 00:33:38,300 Hu l-operatur bidla xellug. 523 00:33:38,300 --> 00:33:40,060 Dan operatur ma dan. 524 00:33:40,060 --> 00:33:44,920 Hawnhekk huwa n-numru 1, u jekk inti do i xellug shift, shift xellug, 525 00:33:44,920 --> 00:33:49,260 x'taħseb li għandu l-effett li jagħmlu dak 1 individwali? 526 00:33:49,260 --> 00:33:51,290 Litteralment ċaqliq li fuq. 527 00:33:51,290 --> 00:33:57,540 Allura jekk in-numru 1 huwa dak li għandek fuq ix-xellug u tibda bl initializing i sa 31, 528 00:33:57,540 --> 00:34:03,490 dak li huwa li se jagħmlu? Huwa ser jieħu dan in-numru 1 u neqilbu dan 31 postijiet hawn fuq. 529 00:34:03,490 --> 00:34:06,210 U għaliex hemm ovvjament ebda ċifri ieħor warajh, 530 00:34:06,210 --> 00:34:10,350 dawn se awtomatikament jiġu sostitwiti 0s. 531 00:34:10,350 --> 00:34:15,120 Allura inti ser tibda bin-numru 1, li naturalment tidher bħal dan - 532 00:34:15,120 --> 00:34:18,659 u let me tiġbed hawn fuq fiċ-ċentru. 533 00:34:18,659 --> 00:34:22,139 U allura kif inti bidla affarijiet fuq ix-xellug, Guy dan essenzjalment tmur b'dan il-mod. 534 00:34:22,139 --> 00:34:24,659 Iżda hekk kif inti tagħmel dan, ta '0 gets mimlija pulzieri 535 00:34:24,659 --> 00:34:28,360 Jekk inti shift hija t-tieni darba, din tmur b'dan il-mod u ieħor 0 gets mimlija pulzieri 536 00:34:28,360 --> 00:34:31,000 >> You shift mill-ġdid u mbagħad ieħor 0 gets mimlija pulzieri 537 00:34:31,000 --> 00:34:37,900 Mela jekk inti tagħmel dan ħaġa ta '1 << i 31 postijiet, inti tispiċċa jkollna maskra 538 00:34:37,900 --> 00:34:42,550 li huwa 32 karattri fit-tul, il-wieħed leftmost tagħhom huwa ta '1, 539 00:34:42,550 --> 00:34:45,199 kollha tal-bqija ta 'li huma ta' 0. 540 00:34:45,199 --> 00:34:50,880 U jirriżulta, bħala twarrib, ċaqliq numru lejn ix-xellug bħal dan 541 00:34:50,880 --> 00:34:53,530 wkoll inzerta, u xi kultant konvenjenti, 542 00:34:53,530 --> 00:34:57,520 għandha l-effett li jagħmlu dak li dak in-numru? >> [Student] irduppjar dan. 543 00:34:57,520 --> 00:35:00,980 Irduppjar għaliex kull wieħed mill-kolonni - il-post 1s, 2s post, post 4s, 544 00:35:00,980 --> 00:35:05,030 Post 8S, 16s post - they're kollha irduppjar kif tmur lejn ix-xellug. 545 00:35:05,030 --> 00:35:09,500 Jew pjuttost, meta inti ċċaqlaq il-1s int ser jispiċċaw irduppjar tal-valur tan-numru. 546 00:35:09,500 --> 00:35:12,070 Tista jispiċċaw jagħmlu trasformazzjonijiet interessanti ta 'numri 547 00:35:12,070 --> 00:35:15,640 billi ċċaqlaq kollox fuq b'dan il-mod mill-poteri ta '2. 548 00:35:15,640 --> 00:35:17,150 Allura kif taħdem din? 549 00:35:17,150 --> 00:35:22,580 Dan imbagħad tagħti me maskra li kollox 0s ħlief għal 1 fil preċiżament il-post I jriduhom, 550 00:35:22,580 --> 00:35:27,920 u mbagħad din l-espressjoni, li hija misruqa mill toupper.c, 551 00:35:27,920 --> 00:35:31,770 hija sempliċement tgħid tieħu n-numru n li l-utent ittajpjat fil, 552 00:35:31,770 --> 00:35:34,730 "U" ma 'dik maskra, u liema huma inti se tikseb? 553 00:35:34,730 --> 00:35:39,200 Int ser tikseb 1 jekk hemm 1 fil-lok masked, 554 00:35:39,200 --> 00:35:41,570 jew int ser tikseb 0 jekk ma jkunx hemm. 555 00:35:41,570 --> 00:35:44,370 U hekk dan kollu programm ma effettivament hija għandha loop, 556 00:35:44,370 --> 00:35:48,340 u din toħloq maskra ma '1 hawn fuq, imbagħad ta' 1 hawn fuq, imbagħad ta '1 hawn fuq, 557 00:35:48,340 --> 00:35:52,950 u hija tuża dan bitwise U trick li jgħidu hemm daqsxejn 1 fil-kontribut tal-utent hawn? 558 00:35:52,950 --> 00:35:59,220 >> Hemm ftit 1 fil-kontribut tal-utent hawn? U jekk iva, litteralment print 1, inkella print 0. 559 00:35:59,220 --> 00:36:03,780 Aħna qed tagħmel dan ma 'ints biss minħabba li huwa għalhekk li għandna qed tagħmel 32 bits minflok 8, 560 00:36:03,780 --> 00:36:06,900 imma dak li konna introdotti allura huwa dan bitwise U, dan bitwise JEW, 561 00:36:06,900 --> 00:36:10,450 u dan l-operatur bidla xellug, li mhumiex ta 'spiss terriblement utli, 562 00:36:10,450 --> 00:36:12,230 iżda jirriżulta li jista 'jkun. 563 00:36:12,230 --> 00:36:16,560 Fil-fatt, jekk ġejt biex jirrappreżentaw xi ħaġa simili ta 'firxa ta' Booleans 564 00:36:16,560 --> 00:36:21,260 biss biex jirrappreżentaw vera jew falza, ejja ngħidu li inti ridt li jżommu rekord ta 'jekk jew le 565 00:36:21,260 --> 00:36:24,630 kamra sħiħa ta '300 student huwa preżenti, 566 00:36:24,630 --> 00:36:29,420 inti tista 'tiddikjara firxa ta' daqs 300 tar tip bool sabiex ikollok 300 bools, 567 00:36:29,420 --> 00:36:33,090 u inti tista 'tistabbilixxi kull wieħed veru jekk xi ħadd huwa hawnhekk u falza mod ieħor. 568 00:36:33,090 --> 00:36:37,550 Għaliex huwa li rappreżentazzjoni f'dak istruttura tad-data ineffiċjenti? 569 00:36:39,370 --> 00:36:44,800 X'hemm ħażin dwar id-disinn ta 'dak istruttura tad-data, firxa ta' 300 bools? 570 00:36:46,190 --> 00:36:49,600 X'inhu bool, fil-fatt, minn taħt il-barnuża? 571 00:36:49,600 --> 00:36:52,310 Dan, ukoll, hija xi ħaġa li jistgħu ma jkunux familjari. 572 00:36:52,310 --> 00:36:53,720 Jirriżulta m'hemm l-ebda bool. 573 00:36:53,720 --> 00:36:56,620 Ftakar aħna tip ta 'ħoloq li bil-fajl cs50.h, 574 00:36:56,620 --> 00:36:58,630 li fih innifsu jinkludi bool standard. 575 00:36:58,630 --> 00:37:00,930 C huwa tip ta 'mutu, għalkemm, meta niġu għall-bool. 576 00:37:00,930 --> 00:37:04,880 Hija tuża 8 bits biex jirrappreżentaw kull bool, li hija kompletament ħela 577 00:37:04,880 --> 00:37:09,040 għaliex ovvjament, kemm bits ma għandek bżonn biex jirrappreżentaw bool? Just 1. 578 00:37:09,040 --> 00:37:13,190 Għalhekk jirriżulta li jekk inti issa għandhom il-ħila mal-operaturi bitwise 579 00:37:13,190 --> 00:37:17,760 li jimmanipulaw bits individwali anke fil-char, anki fi byte wieħed, 580 00:37:17,760 --> 00:37:21,380 jirriżulta li inti tista 'tnaqqas l-memorja meħtieġ li jirrappreżenta xi ħaġa stupid 581 00:37:21,380 --> 00:37:25,490 bħal dik attendenza istruttura tad-data styled b'fattur ta '8. 582 00:37:25,490 --> 00:37:29,820 Minflok tuża tmien bits biex jirrappreżentaw vera jew falza, inti tista litteralment tuża waħda 583 00:37:29,820 --> 00:37:34,500 bl-użu ta byte wieħed għal kull istudenti 8 fil-klassi 584 00:37:34,500 --> 00:37:41,990 u toggling 0-1 bits individwali billi jużaw dawn it-tipi ta 'livell baxx tricks. 585 00:37:43,850 --> 00:37:49,460 Li verament itemmu l-enerġija. Hemm xi mistoqsijiet dwar l-operazzjonijiet bitwise? 586 00:37:49,460 --> 00:37:52,710 >> Yeah. >> [Student] Hemm operatur esklussiva jew? 587 00:37:52,710 --> 00:37:56,440 Iva. Hemm operatur esklussiva jew li tidher bħal dan, ^, is-simbolu zunnarija, 588 00:37:56,440 --> 00:38:02,070 li tfisser biss il-ħaġa ewwel jew it-tieni ħaġa tista 'tkun 1 għall-produzzjoni li tkun 1. 589 00:38:02,070 --> 00:38:07,750 Hemm ukoll le, ~, li se jippermetti li inti invertit ta '0 lil versa 1 jew viċi ukoll. 590 00:38:07,750 --> 00:38:11,600 U hemm ukoll operatur bidla dritt, >>, li huwa l-oppost ta 'dak rajna. 591 00:38:11,600 --> 00:38:13,850 Kull dritt. Ejja jieħdu l-affarijiet issa għal livell ogħla. 592 00:38:13,850 --> 00:38:16,770 Bdejna billi titkellem dwar it-test u mbagħad kompressjoni li 593 00:38:16,770 --> 00:38:19,650 u li jirrappreżentaw it-test bin-numri inqas ta 'bits; 594 00:38:19,650 --> 00:38:22,890 tkellimna ftit dwar kif aħna issa tista 'tibda titħaddem affarijiet fuq livell bitwise. 595 00:38:22,890 --> 00:38:26,640 Ejja issa zoom back up 10,000 pied għal rappreżentanza 596 00:38:26,640 --> 00:38:29,250 ta 'l-affarijiet aktar kumplessi bħall-grafika. 597 00:38:29,250 --> 00:38:32,950 Hawnhekk għandna bandiera tal-Ġermanja, hawnhekk aħna għandna waħda ta 'Franza. 598 00:38:32,950 --> 00:38:36,350 Dawn jistgħu jkunu rappreżentati fil-formati tal-fajl inti tista 'taf - gifs, per eżempju. 599 00:38:36,350 --> 00:38:40,030 Jekk inti stajt qatt dehru immaġni fuq il-Web li jispiċċa fl. Gif, 600 00:38:40,030 --> 00:38:43,000 dan huwa format ta 'skambju grafika. 601 00:38:43,000 --> 00:38:47,530 Dawn bnadar 2 hawn tip ta jisilfu lilhom infushom għall-kompressjoni 602 00:38:47,530 --> 00:38:52,050 għal dak li forsi ovvju raġuni? >> [Rispons istudent inaudible] 603 00:38:52,050 --> 00:38:53,440 Hemm ħafna ta 'ripetizzjoni, id-dritt? 604 00:38:53,440 --> 00:38:57,270 Sabiex tibgħat bandiera tal-Ġermanja, think ta 'dan bħala immaġini fuq l-iskrin 605 00:38:57,270 --> 00:38:59,030 lura fil-jiem Scratch tiegħek. 606 00:38:59,030 --> 00:39:02,380 Inti tista 'tfakkar li hemm pixels individwali jew tikek li jikkomponu l-immaġini. 607 00:39:02,380 --> 00:39:06,650 >> Hemm ringiela sħiħa ta 'tikek suwed u ieħor ringiela kollha ta' tikek suwed. 608 00:39:06,650 --> 00:39:10,110 Hemm mazz ta 'ringieli ta' tikek suwed li nistgħu tara jekk aħna verament żżomjati fi, 609 00:39:10,110 --> 00:39:13,370 simili ħafna meta aħna żżomjati fl fuq wiċċ Rob fil Photoshop. 610 00:39:13,370 --> 00:39:15,500 Hekk kif aħna ltqajna aktar profonda u aktar profonda u aktar profonda fis-immaġni, 611 00:39:15,500 --> 00:39:19,990 bdejt tara l-pixelation, kollha tal-kwadrati li kienu jiffurmaw l-għajnejn tiegħu f'dak il-każ. 612 00:39:19,990 --> 00:39:24,130 Jittrattaw Istess hawn. Jekk aħna żżomjati fil pjuttost ftit, inti tara tikek individwali. 613 00:39:24,130 --> 00:39:27,110 Ukoll, dan huwa tip ta 'ħela ta' bits. 614 00:39:27,110 --> 00:39:32,120 Jekk ċittadin tal-bandiera huwa iswed u terz tal-bandiera huwa isfar u oħrajn, 615 00:39:32,120 --> 00:39:34,860 għaliex ma nistgħu b'xi mod kkompressat din il-bandiera? 616 00:39:34,860 --> 00:39:39,560 U anki l-bandiera Franċiża jistgħu jiġu kkompressati anki jekk il-mudell huwa xi ftit differenti. 617 00:39:39,560 --> 00:39:44,120 Jirriżulta l-format tal-fajl GIF huwa format kompressjoni lossless, 618 00:39:44,120 --> 00:39:48,420 li jfisser li inti tista 'tieħu l-immaġni bħall-bandiera Ġermaniża hawn, 619 00:39:48,420 --> 00:39:53,540 inti tista tarmi l bogħod ħafna bits tagħha mingħajr ma tiġi sagrifikata kwalità. 620 00:39:53,540 --> 00:39:55,340 Dan huwa b'kuntrast għal xi ħaġa bħal JPEGs, 621 00:39:55,340 --> 00:39:57,050 magħhom ħafna minna huma probabbilment aktar familjari. 622 00:39:57,050 --> 00:39:59,000 Facebook ritratti u Flickr ritratti u simili 623 00:39:59,000 --> 00:40:02,200 huma kważi dejjem jiġu ffrankati bħala JPEGs meta jkunu qed tittella, 624 00:40:02,200 --> 00:40:08,100 iżda JPEGs huwa lossy - format li bih inti tarmi bits - lossy 625 00:40:08,100 --> 00:40:10,430 imma int wkoll armih kwalità. 626 00:40:10,430 --> 00:40:13,890 U hekk jekk inti kkompressat ritratti bil Photoshop jew upload biex Facebook 627 00:40:13,890 --> 00:40:15,580 jew teħodhom fuq telefon verament crappy, 628 00:40:15,580 --> 00:40:19,510 inti taf li l-istampa jibda biex tikseb ħafna splotchy u pixelated, 629 00:40:19,510 --> 00:40:22,290 u dan għaliex huwa qed kompressat mill-kompjuter jew telefon 630 00:40:22,290 --> 00:40:24,550 billi litteralment jitfa 'informazzjoni bogħod. 631 00:40:24,550 --> 00:40:28,500 Iżda GIF hija aqwa minħabba li tista 'tuża bits inqas milli jista' kontumaċja 632 00:40:28,500 --> 00:40:30,750 mingħajr ma jitilfu ebda informazzjoni. 633 00:40:30,750 --> 00:40:32,410 >> U essenzjalment tagħmel dan kif ġej. 634 00:40:32,410 --> 00:40:38,740 Pjuttost milli taħżen fil-fajl bħal BMP kieku l trippla RGB għall-iswed, iswed, iswed, iswed, 635 00:40:38,740 --> 00:40:42,570 iswed, iswed, iswed, iswed, iswed, iswed, iswed, iswed u oħrajn, 636 00:40:42,570 --> 00:40:45,640 pjuttost, il-format GIF se ngħid, "Black," 637 00:40:45,640 --> 00:40:48,330 u mbagħad, "Irrepeti dan darbiet 100," jew xi ħaġa bħal dik. 638 00:40:48,330 --> 00:40:52,280 "Iswed, irrepeti dan darbiet 100, iswed, irrepeti dan darbiet 100 ..." 639 00:40:52,280 --> 00:40:54,530 "Yellow, irrepeti dan darbiet 100." 640 00:40:54,530 --> 00:40:57,200 U għalhekk jiftakar, essenzjalment, il-pixel leftmost 641 00:40:57,200 --> 00:41:02,160 u mbagħad tikkodifika b'xi mod il-kunċett ta 'tirrepeti dak pixel ġdid u għal darb'oħra. 642 00:41:02,160 --> 00:41:06,110 Allura GIFs jistgħu mbagħad kkompressat lilhom infushom mingħajr ma jitilfu ebda informazzjoni. 643 00:41:06,110 --> 00:41:09,510 Imma jekk inti kellha raden, jekk dan huwa l-algoritmu li gifs użu, 644 00:41:09,510 --> 00:41:13,180 liema minn dawn il-bnadar, anki jekk huma jfittxu identiċi fid-daqs, 645 00:41:13,180 --> 00:41:19,620 se tkun iżgħar meta ffrankati fuq diska bħala GIF? >> [Student] Il-Ġermanja. 646 00:41:19,620 --> 00:41:21,660 Il-Ġermanja se tkun iżgħar? Għaliex? 647 00:41:21,660 --> 00:41:26,620 [Student] Għaliex inti jirrepeti dan ħafna, ħafna drabi orizzontalment 648 00:41:26,620 --> 00:41:29,010 u allura inti irrepeti ieħor żmien. >> Eżattament. 649 00:41:29,010 --> 00:41:32,020 Minħabba li l-persuni li vvinta GIF tat-tip biss b'mod arbitrarju iddeċieda 650 00:41:32,020 --> 00:41:36,040 li r-ripetizzjoni se jkunu msaħħa orizzontalment u mhux lateralment. 651 00:41:36,040 --> 00:41:40,900 Hemm ripetizzjoni ħafna aktar lateralment hawn fil-bandiera Ġermaniża milli fil-bandiera Franċiża. 652 00:41:40,900 --> 00:41:44,430 Allura jekk aħna fil-fatt tiftaħ folder fuq hard drive tiegħi li għandu dawn GIFs, 653 00:41:44,430 --> 00:41:51,920 inti tista 'attwalment tara li l-bandiera Ġermaniża hawnhekk huwa 2 kilobytes u l-wieħed Franċiż huwa 4 kilobytes. 654 00:41:51,920 --> 00:41:54,080 Dan jiġri li jkun koinċidenza li wieħed huwa darbtejn l-oħra, 655 00:41:54,080 --> 00:41:57,960 iżda huwa fil-fatt il-każ li l-bandiera Franċiża huwa ħafna ikbar. 656 00:41:57,960 --> 00:42:01,250 >> Anki jekk aħna qed jitkellem hawn dwar grafika, l-istess ideat tista 'tapplika għal 657 00:42:01,250 --> 00:42:05,150 mhux affarijiet simili bnadar iżda stampi li huma ftit aktar kumplessi. 658 00:42:05,150 --> 00:42:08,170 Jekk inti tieħu stampa ta 'tuffieħ, żgur hemm ħafna ta' duplikazzjoni hemmhekk, 659 00:42:08,170 --> 00:42:11,040 hekk nistgħu b'xi mod niftakru li l-isfond default blu 660 00:42:11,040 --> 00:42:13,230 u mhux, kif l-istampa tal-lemin jissuġġerixxi, 661 00:42:13,230 --> 00:42:16,830 għandek tiftakar il-kulur ta 'kull pixel wieħed din l-istampa. 662 00:42:16,830 --> 00:42:21,060 Allura nistgħu tarmi bits bogħod hemm mingħajr ma jitilfu l-informazzjoni. 663 00:42:21,060 --> 00:42:23,340 Il-tuffieħ għadu jistenna biss l-istess. 664 00:42:23,340 --> 00:42:27,510 F'dan l-eżempju hawn, inti tista 'tara dak li jiġri fil-film. 665 00:42:27,510 --> 00:42:31,970 Dawn jirrappreżentaw qodma l-iskola irkiekel film li permezz tagħha fil-immaġini ta 'fuq hemm 666 00:42:31,970 --> 00:42:36,900 għandek sewqan RV passat dar u siġra. 667 00:42:36,900 --> 00:42:42,130 U kif dan van drives passat mix-xellug għal-lemin, dak li ovvjament ma jinbidlu? 668 00:42:42,130 --> 00:42:45,320 Il-house huwa ma tmur imkien, u l-siġra huwa ma tmur imkien. 669 00:42:45,320 --> 00:42:47,700 L-unika ħaġa li l-mixja huwa l-van f'dan il-każ. 670 00:42:47,700 --> 00:42:51,650 Allura kif Sfond mhux mibdul jissuġġerixxi, x'tista 'tagħmel fil-films 671 00:42:51,650 --> 00:42:56,530 huwa simili biss tarmi l bogħod informazzjoni li ma tinbidilx fl bejn frames. 672 00:42:56,530 --> 00:42:58,900 Dan huwa ġeneralment magħruf bħala kompressjoni interframe 673 00:42:58,900 --> 00:43:02,120 fejn jekk dan il-qafas jistenna kważi identiku għal dan wieħed, 674 00:43:02,120 --> 00:43:05,390 ejja ma jolqot ħażna fuq disk xi informazzjoni identika 675 00:43:05,390 --> 00:43:09,250 fuq dawn il-frejms intermedji, ejja biss l-użu frejms ewlenin darba fil-waqt 676 00:43:09,250 --> 00:43:13,420 li attwalment jaħżnu l-informazzjoni bla bżonn biss bħala sanità ftit check. 677 00:43:13,420 --> 00:43:18,620 >> B'kuntrast, approċċ ieħor għall-video kompressjoni huwa f'dan l-eżempju 2 u t'isfel hawn, 678 00:43:18,620 --> 00:43:23,970 fejn minflok maħżen 30 frejm, għaliex ma inti biss taħżen 15 frejm ta '2 minflok? 679 00:43:23,970 --> 00:43:27,070 Pjuttost milli t-tip movie ta flowing beautifully, perfettament, 680 00:43:27,070 --> 00:43:30,060 jista look like huwa stuttering ftit, skola qodma ftit, 681 00:43:30,060 --> 00:43:37,190 iżda l-effett nett ikun li tuża bits ferm inqas milli kieku jkun meħtieġ. 682 00:43:37,190 --> 00:43:39,240 Għalhekk, fejn ma dan imbagħad leave us? 683 00:43:39,240 --> 00:43:41,700 Dan kien daqsxejn ta 'twarrib fuq fejn inkella inti tista' tmur bil-kompressjoni. 684 00:43:41,700 --> 00:43:45,140 Għal aktar tagħrif dwar dan, tieħu klassi bħal CS175 hawn. 685 00:43:45,140 --> 00:43:46,990 Hawn eżempju ieħor fi ħdan video. 686 00:43:46,990 --> 00:43:49,190 Jekk il-naħla huwa l-unika ħaġa li jiċċaqilqu, 687 00:43:49,190 --> 00:43:51,790 inti tista 'verament armih informazzjoni f'dawk frejms tan-nofs 688 00:43:51,790 --> 00:43:55,260 minħabba li l-fjuri u l-sema u weraq mhumiex jinbidlu. 689 00:43:55,260 --> 00:43:57,960 Imma ejja issa jikkunsidraw wieħed aħħar ħaġa. 690 00:43:57,960 --> 00:44:03,890 Fil-5 minuti we leave C lura għal dejjem fil lecture? Iva. Mhux fil-psets, għalkemm. 691 00:44:03,890 --> 00:44:10,210 Istorja Last dwar C u mbagħad nagħmlu biex Jittieħed ħafna sexy 692 00:44:10,210 --> 00:44:13,870 jinvolvu HTML u Web u Woo HOO-. Kull dritt. 693 00:44:13,870 --> 00:44:16,050 Here we go. Dik hija l-motivazzjoni. 694 00:44:16,050 --> 00:44:20,020 Jirriżulta dan il-ħin meta aħna ġew miktub programmi we run clang. 695 00:44:20,020 --> 00:44:23,890 U clang, konna qal peress li l-ewwel ġimgħa pjuttost ħafna, jieħu kodiċi tas-sors 696 00:44:23,890 --> 00:44:25,740 u tikkonverti din fis-kodiċi ta 'oġġett. 697 00:44:25,740 --> 00:44:28,540 Huwa jieħu C u tikkonverti din fis-0s u 1s. 698 00:44:28,540 --> 00:44:32,150 Stajt tip ta ġie tinsab lilek għal ftit ġimgħat għaliex mhuwiex daqshekk sempliċi bħal dik. 699 00:44:32,150 --> 00:44:36,750 >> Hemm ħafna aktar għaddejjin taħt il-barnuża meta inti tmexxi programm bħal clang. 700 00:44:36,750 --> 00:44:39,560 Fil-fatt, il-proċess tal-kompilazzjoni ta 'programm jista' verament jiġi mqassar, 701 00:44:39,560 --> 00:44:42,210 kif inti tista 'recall mill-video Rob fuq kompilaturi, 702 00:44:42,210 --> 00:44:47,580 fis-dawn il-passi 4: qabel l-ipproċessar, ġbir innifsu, assemblaġġ, u jgħaqqdu. 703 00:44:47,580 --> 00:44:51,950 Iżda aħna fil-klassi u aktar nies fid-dinja tipikament tqassar kollha ta 'dawn il-passi 704 00:44:51,950 --> 00:44:54,410 biss bħala "kumpilazzjoni". 705 00:44:54,410 --> 00:44:58,070 Iżda jekk nibdew bil-kodiċi sors bħal dan, wieħed jiftakar li dan huwa forsi l-programm C sempliċi 706 00:44:58,070 --> 00:45:03,530 konna bil-miktub s'issa, ifakkar li meta miġbura dan jispiċċa tfittex bħal dan. 707 00:45:03,530 --> 00:45:07,310 Iżda hemm attwalment pass intermedju, u dawk il-passi huma li ġejjin. 708 00:45:07,310 --> 00:45:10,750 L-ewwel hemm dan ħaġa fuq nett ta 'dan u aktar ta' programmi tagħna, 709 00:45:10,750 --> 00:45:13,550 # Jinkludu 710 00:45:13,550 --> 00:45:17,210 Xi jfisser # Jinkludu do għalina? 711 00:45:17,210 --> 00:45:24,150 Hija kopji pretty ħafna u pejst tal-kontenut tar stdio.h fil-fajl tiegħi hekk li għaliex? 712 00:45:24,150 --> 00:45:27,220 Għaliex għandi kura dwar il-kontenut ta stdio.h? X'hemm fil hemmhekk ta 'interess? 713 00:45:27,220 --> 00:45:32,310 Dikjarazzjoni printf, il-prototip tiegħu, b'tali mod li l-kumpilatur imbagħad jaf dak li jfisser I 714 00:45:32,310 --> 00:45:34,900 meta nsemmi din il-funzjoni printf. 715 00:45:34,900 --> 00:45:39,390 Allura pass 1 fil-kumpilazzjoni hija pre-proċessar, fejn programm bħal clang 716 00:45:39,390 --> 00:45:43,450 jew xi programm helper li clang jiġi ma taqra top kodiċi tiegħek għal isfel, 717 00:45:43,450 --> 00:45:47,740 xellug għal-lemin, u kull darba li jara simbolu # segwit minn keyword bħal jinkludu, 718 00:45:47,740 --> 00:45:53,980 li jwettaq din l-operazzjoni, l-ikkupjar u pasta f'dan il-każ stdio.h fil-fajl tiegħek. 719 00:45:53,980 --> 00:45:55,510 Li pass 1. 720 00:45:55,510 --> 00:45:59,620 Imbagħad għandek fajl C ħafna akbar minħabba l-kopja enormi, xogħol pejst li jinsab biss ġara. 721 00:45:59,620 --> 00:46:01,710 >> 2 Pass issa qed tiġbor. 722 00:46:01,710 --> 00:46:04,880 Iżda jirriżulta kompilazzjoni jieħu kodiċi sors li tidher bħal dan 723 00:46:04,880 --> 00:46:08,160 u jibdel din in xi ħaġa li tidher bħal dan, 724 00:46:08,160 --> 00:46:12,560 li għal dawk familjari huwa msejjaħ? >> [Student] Assemblea. Lingwa Assemblea. >> 725 00:46:12,560 --> 00:46:16,700 Dan huwa attwalment xi ħaġa jekk inti tieħu CS61 inti ser adsa fis f'aktar dettall. 726 00:46:16,700 --> 00:46:22,380 Dan huwa biss dwar qrib kemm int tista 'tieħu għall-kitba 0s u 1s innifsek 727 00:46:22,380 --> 00:46:25,850 iżda bil-miktub affarijiet b'tali mod li xorta jagħmel għall-inqas xi ftit ta 'sens. 728 00:46:25,850 --> 00:46:30,760 Dawn huma l-istruzzjonijiet tal-magni, u jekk aħna iscroll sal-funzjoni prinċipali hawnhekk, 729 00:46:30,760 --> 00:46:35,470 avviż li hemm din l-istruzzjoni timbotta, jimxu istruzzjoni, naqqas istruzzjoni, 730 00:46:35,470 --> 00:46:38,550 sejħa istruzzjoni, u oħrajn. 731 00:46:38,550 --> 00:46:42,930 Meta inti tisma li l-kompjuter tiegħek Intel ġewwa, 732 00:46:42,930 --> 00:46:46,180 għandek CPU Intel fil Mac tiegħek jew PC, xi jfisser? 733 00:46:46,180 --> 00:46:51,200 A CPU taqa mibnija minn kumpaniji bħal Intel fehim ċerti struzzjonijiet. 734 00:46:51,200 --> 00:46:55,770 Huma jkollhom l-ebda idea liema funzjonijiet simili swap huma jew ewlenin huma per se, 735 00:46:55,770 --> 00:47:00,060 iżda dawn ma jafu liema baxx ħafna ta 'livell istruzzjonijiet simili żid, naqqas, timbotta, 736 00:47:00,060 --> 00:47:02,430 jiċċaqalqu, sejħa, u oħrajn huma. 737 00:47:02,430 --> 00:47:06,170 Allura meta inti tiġbor kodiċi C fil-lingwa assemblaġġ, 738 00:47:06,170 --> 00:47:11,820 ħafna utent tiegħek faċli li tħares 'kodiċi hija konvertita xi ħaġa li tidher bħal dan, 739 00:47:11,820 --> 00:47:21,670 li litteralment jiċċaqlaq bytes jew 4 bytes madwar f'unitajiet żgħar bħal dawn fi u barra mill-CPU. 740 00:47:21,670 --> 00:47:26,820 Iżda fl-aħħar, meta clang hija lesta li tieħu din ir-rappreżentanza tal-programm tiegħek 741 00:47:26,820 --> 00:47:30,940 fil 0s u 1s, allura l-pass imsejħa assemblaġġ jiġri, 742 00:47:30,940 --> 00:47:33,850 u dan jerġa kollu jiġri fil-blink ta 'għajn waqt il-ġiri clang. 743 00:47:33,850 --> 00:47:39,300 Aħna tibda hawn, huwa outputs fajl bħal dan, u allura tikkonverti għal dawn 0s u 1s. 744 00:47:39,300 --> 00:47:42,000 U jekk inti tixtieq li tmur lura f'xi punt u fil-fatt tara dan fl-azzjoni, 745 00:47:42,000 --> 00:47:48,220 jekk mmur fis hello1.c--dan huwa wieħed mill-programmi ħafna ewwel ħarisna lejn - 746 00:47:48,220 --> 00:47:53,710 normalment aħna se tiġbor din l hello1.c clang u dan jagħti lilna a.out. 747 00:47:53,710 --> 00:47:59,890 Jekk b'kuntrast, inti minflok tagħtiha l-S-bandiera, dak li int ser tikseb hija hello1.s 748 00:47:59,890 --> 00:48:02,750 u tkun taf attwalment ara l-lingwa assemblaġġ. 749 00:48:02,750 --> 00:48:05,750 >> Jien tagħmel dan għal programm qasir ħafna, imma jekk inti tmur lura għall-ġirja 750 00:48:05,750 --> 00:48:08,740 jew Jirkupraw jew kwalunkwe programm li inti ħadthom bil-miktub u biss mill-kurżità 751 00:48:08,740 --> 00:48:13,240 trid tara dak li attwalment tidher qiesha, dak li fil-fatt qed jiddaħħlu fil-CPU, 752 00:48:13,240 --> 00:48:15,700 inti tista 'tuża l-S-bandiera ma clang. 753 00:48:15,700 --> 00:48:17,770 Iżda mbagħad fl-aħħar, hemm xorta waħda gotcha. 754 00:48:17,770 --> 00:48:21,810 Hawn huma l-0s u 1s li jirrappreżentaw implimentazzjoni tiegħi ta 'hello, dinja. 755 00:48:21,810 --> 00:48:25,530 Imma I użati funzjoni xi ħadd ieħor fil-programm tiegħi. 756 00:48:25,530 --> 00:48:28,710 Għalhekk anki jekk il-proċess kien I jieħdu hello.c, 757 00:48:28,710 --> 00:48:34,280 jiġrilha miġbura fil-kodiċi assemblaġġ, u mbagħad jiġrilha mmuntati fi 0s u 1s, 758 00:48:34,280 --> 00:48:37,460 l-unika 0s u 1s li huma outputted f'dan il-punt fil-ħin 759 00:48:37,460 --> 00:48:40,270 huma dawk li jirriżultaw mill-kodiċi tiegħi. 760 00:48:40,270 --> 00:48:44,400 Iżda l-persuna li kiteb printf, huma miġbura kodiċi tagħhom 20 sena ilu 761 00:48:44,400 --> 00:48:47,000 u huwa issa installat x'imkien fuq l-appliance, 762 00:48:47,000 --> 00:48:51,610 hekk aħna b'xi mod ikollhom jingħaqdu 0s tiegħu jew tagħha u 1s ma 0s tiegħi u 1s, 763 00:48:51,610 --> 00:48:56,160 u dan iwassalna għall-pass 4 u finali tal-kompilazzjoni, magħrufa bħala jgħaqqdu. 764 00:48:56,160 --> 00:48:58,680 Allura fuq in-naħa tax-xellug għandna l-istess stampa eżatta bħal qabel: 765 00:48:58,680 --> 00:49:02,580 hello.c isir kodiċi assemblaġġ isir 0s u 1s. 766 00:49:02,580 --> 00:49:05,960 Imma ifakkar li I użat l-istandard I / O librerija fil-kodiċi tiegħi, 767 00:49:05,960 --> 00:49:10,350 u dan ifisser x'imkien fuq il-kompjuter hemm fajl imsejjaħ stdio.c 768 00:49:10,350 --> 00:49:13,980 jew għall-inqas il-verżjoni ikkumpilata minnhom minħabba xi ħadd xi snin ilu 769 00:49:13,980 --> 00:49:18,530 miġbura stdio.c fis-kodiċi assemblaġġ u mbagħad mazz sħiħ ta '0s u 1s. 770 00:49:18,530 --> 00:49:21,130 Dan huwa dak magħruf bħala statika jew librerija dinamiku. 771 00:49:21,130 --> 00:49:23,350 Huwa xi fajl seduta x'imkien fl-appliance. 772 00:49:23,350 --> 00:49:28,710 >> Iżda fl-aħħar, I għandhom jieħdu 0s tiegħi u 1s u 0s dik il-persuna u 1s 773 00:49:28,710 --> 00:49:32,760 u b'xi mod jorbtuhom flimkien, litteralment jgħaqqdu dawk 0s u 1s 774 00:49:32,760 --> 00:49:37,900 fis-fajl wieħed imsejjaħ a.out jew hello1 jew kwalunkwe I imsejħa programm tiegħi 775 00:49:37,900 --> 00:49:43,320 b'tali mod li r-riżultat aħħari tkun kollha tal-1s u 0s li għandhom jikkomponu programm tiegħi. 776 00:49:43,320 --> 00:49:45,660 Allura dan il-ħin dan is-semestru meta inti kont qed tuża clang 777 00:49:45,660 --> 00:49:48,750 u aktar reċentement taħdem jagħmlu sabiex jiddekorri clang, 778 00:49:48,750 --> 00:49:53,580 kollha ta 'dawn il-passi ġew jiġri tip ta' instantanju imma very deliberatament. 779 00:49:53,580 --> 00:49:57,830 U hekk jekk inti tkompli fuq fix-xjenza tal-kompjuter, jiġifieri CS61, 780 00:49:57,830 --> 00:50:00,850 dan huwa s-saff li inti ser tkompli qoxra lura off hemm 781 00:50:00,850 --> 00:50:06,980 jitkellem dwar l-effiċjenza, l-implikazzjonijiet ta 'sigurtà, u materjal simili ta' dawn id-dettalji livell aktar baxx. 782 00:50:06,980 --> 00:50:09,220 Iżda ma 'dan, aħna qed waslu biex jitilqu C lura. 783 00:50:09,220 --> 00:50:11,420 Ejja jimxi 'l quddiem u tieħu 5-minuta break tagħna issa, 784 00:50:11,420 --> 00:50:14,190 u meta niġu lura: l-Internet. 785 00:50:17,280 --> 00:50:19,170 Kull dritt. Aħna lura. 786 00:50:19,170 --> 00:50:23,590 Issa aħna jibdew ħarsa tagħna mhux biss fil HTML għaliex, kif se tara, 787 00:50:23,590 --> 00:50:26,050 HTML innifsu huwa attwalment pjuttost sempliċi 788 00:50:26,050 --> 00:50:29,270 imma verament fil-programmazzjoni web aktar ġenerali, netwerking aktar ġenerali, 789 00:50:29,270 --> 00:50:31,770 u kif kollha ta 'dawn it-teknoloġiji jiġu flimkien 790 00:50:31,770 --> 00:50:35,400 li tippermetti magħna biex jinħolqu programmi ferm aktar sofistikati atop l-Internet 791 00:50:35,400 --> 00:50:38,690 minn s'issa aħna kont qed kapaċi f'dawn twieqi iswed u abjad. 792 00:50:38,690 --> 00:50:42,140 Tabilħaqq, f'dan il-punt fil-semestru anke jekk aħna se jqattgħu ħin relattivament inqas 793 00:50:42,140 --> 00:50:46,200 fuq PHP, HTML, CSS, JavaScript, SQL u aktar, 794 00:50:46,200 --> 00:50:48,480 istudenti aktar ma jispiċċaw jagħmlu proġetti finali li huma fuq l-internet 795 00:50:48,480 --> 00:50:51,230 għaliex kif tkun taf tara, l-isfond issa għandek fis-C 796 00:50:51,230 --> 00:50:54,450 huwa ferm applikabbli għal dawn il-lingwi ta 'livell ogħla. 797 00:50:54,450 --> 00:50:56,800 >> U kif inti tibda taħseb dwar il-proġett finali tiegħek, 798 00:50:56,800 --> 00:50:59,940 li, ferm simili Set Problema 0, fejn inti kienu mħeġġa 799 00:50:59,940 --> 00:51:02,160 biex tagħmel xejn aktar ta 'interess għalik fil Scratch, 800 00:51:02,160 --> 00:51:05,790 il-proġett finali huwa opportunità tiegħek biex tieħu l-għarfien newfound tiegħek u sofistikati ma 'C 801 00:51:05,790 --> 00:51:09,850 jew PHP jew JavaScript jew simili out għal spin 802 00:51:09,850 --> 00:51:12,330 u joħolqu biċċa tiegħek stess ta 'softwer għad-dinja biex tara. 803 00:51:12,330 --> 00:51:17,770 U biex żerriegħa inti ma ideat, taf li inti tista 'ras hawn, projects.cs50.net. 804 00:51:17,770 --> 00:51:21,800 Kull sena, aħna jitolbu ideat minn fakultà u l-istaff u l-gruppi istudenti fuq il-kampus 805 00:51:21,800 --> 00:51:27,330 biss biex jissottomettu l-ideat tagħhom għal affarijiet interessanti li jistgħu jiġu solvuti jużaw il-kompjuters, 806 00:51:27,330 --> 00:51:29,860 jużaw websajts, permezz ta 'softwer. 807 00:51:29,860 --> 00:51:32,360 Mela jekk inti qed jitħabtu biex toħroġ bi idea tal tiegħek, 808 00:51:32,360 --> 00:51:35,790 bil-mezzi kollha iscroll permezz l-ideat hemmhekk minn din is-sena u l-aħħar. 809 00:51:35,790 --> 00:51:39,990 Huwa perfettament okay biex tindirizza proġett li ġie ttrattat qabel. 810 00:51:39,990 --> 00:51:44,540 Rajna apps ħafna għall jaraw l-istatus ta 'laundry fuq il-kampus, 811 00:51:44,540 --> 00:51:47,000 apps ħafna għall-navigazzjoni tal-menu sala dining, 812 00:51:47,000 --> 00:51:49,540 apps ħafna għall-navigazzjoni tal-katalogu tal-kors u simili. 813 00:51:49,540 --> 00:51:53,680 U fil-fatt, għal taħdita futur u f'seminars futuri, 814 00:51:53,680 --> 00:51:57,750 aħna ser jintroduċu inti għal xi APIs pubblikament disponibbli, kemm kummerċjalment disponibbli 815 00:51:57,750 --> 00:52:02,520 kif ukoll hawn disponibbli minn CS50 fuq il-kampus sabiex ikollok aċċess għal data 816 00:52:02,520 --> 00:52:04,910 u tista 'mbagħad tagħmel affarijiet interessanti magħha. 817 00:52:04,910 --> 00:52:09,380 Allura aktar fuq proġetti finali fi ftit jiem meta aħna rilaxx l-ispeċifikazzjoni, 818 00:52:09,380 --> 00:52:12,990 iżda għal issa, taf li inti tista 'taħdem solo jew ma' wieħed jew tnejn ħbieb 819 00:52:12,990 --> 00:52:16,010 fuq ħafna kull proġett ta 'interess għalik. 820 00:52:16,010 --> 00:52:18,080 L-Internet. 821 00:52:18,080 --> 00:52:22,300 Inti tmur quddiem u iġbed il-laptop tiegħek, inti tmur facebook.com għall-ewwel darba, 822 00:52:22,300 --> 00:52:27,020 li ma illoggjat reċentement, u hit Ikteb. X'inhuma eżattament jiġri? 823 00:52:27,020 --> 00:52:30,150 >> Meta inti hit Ikteb fuq il-kompjuter tiegħek, mazz sħiħ ta 'passi 824 00:52:30,150 --> 00:52:32,600 tibda tip ta magically jiġri. 825 00:52:32,600 --> 00:52:35,960 Allura inti hawn fuq ix-xellug web server bħal Facebook huwa hawn fuq il-lemin 826 00:52:35,960 --> 00:52:42,500 u b'xi mod inti qed tuża din il-lingwa imsejħa HTTP, hypertext Trasferiment Protokoll. 827 00:52:42,500 --> 00:52:46,770 HTTP ma tkunx lingwa ta 'programmar. Huwa aktar ta 'protokoll. 828 00:52:46,770 --> 00:52:52,310 Huwa sett ta 'konvenzjonijiet li web browsers u s-servers tal-web jużaw meta interkomunikatorju. 829 00:52:52,310 --> 00:52:54,360 U dak li dan ifisser huwa kif ġej. 830 00:52:54,360 --> 00:52:56,790 Ħafna bħal fid-dinja reali, għandna dawn il-konvenzjonijiet 831 00:52:56,790 --> 00:53:00,140 fejn jekk inti tissodisfa xi bniedem għall-ewwel darba, jekk inti ma mind me humoring hawn, 832 00:53:00,140 --> 00:53:03,980 I tista 'toħroġ lilek, jiġifieri, "Hi, jien jisimni David." >> Hi, David. Jisimni Sammy. 833 00:53:03,980 --> 00:53:05,770 "Hi, David. Jisimni Sammy." 834 00:53:05,770 --> 00:53:08,310 Allura issa għandna biss involuti f'dan it-tip ta 'protokoll tal-bniedem iblah 835 00:53:08,310 --> 00:53:12,200 fejn I bdew il-protokoll, Sammy wieġbet, 836 00:53:12,200 --> 00:53:15,060 konna jitħawwad idejn, u t-transazzjoni hija kompluta. 837 00:53:15,060 --> 00:53:18,260 HTTP huwa simili ħafna fl-ispirtu. 838 00:53:18,260 --> 00:53:23,350 Meta t-talbiet tiegħek web browser www.facebook.com, 839 00:53:23,350 --> 00:53:27,020 dak browser tiegħek huwa verament tagħmel huwa li testendi naħa tiegħu, biex ngħidu hekk, 840 00:53:27,020 --> 00:53:29,960 għall-server u huwa jibagħtuha messaġġ. 841 00:53:29,960 --> 00:53:34,220 U li l-messaġġ huwa tipikament xi ħaġa simili nikseb - dak li tridu biex jiksbu? - 842 00:53:34,220 --> 00:53:38,740 nikseb me-home page, li tipikament huwa indikat permezz linja waħda mmejla fl-aħħar ta 'URL. 843 00:53:38,740 --> 00:53:43,790 U biss sabiex inti tkun taf liema lingwa jien speaking, I-browser am ser jgħidlek 844 00:53:43,790 --> 00:53:46,930 li jien jitkellem verżjoni HTTP 1.1, 845 00:53:46,930 --> 00:53:51,980 U wkoll għal miżura tajba, jien ser jgħidlek li l-ospitanti li nixtieq il-home page ta ' 846 00:53:51,980 --> 00:53:54,120 huwa facebook.com. 847 00:53:54,120 --> 00:53:57,730 Tipikament, web browser, unbeknownst lilek, il-bniedem, 848 00:53:57,730 --> 00:54:03,350 jibgħat dan il-messaġġ madwar l-Internet meta inti sempliċiment tip www.facebook.com, 849 00:54:03,350 --> 00:54:05,370 >> Daħħal, fil-browser tiegħek. 850 00:54:05,370 --> 00:54:07,300 U dak ma Facebook jirrispondu ma? 851 00:54:07,300 --> 00:54:12,540 Huwa jirrispondi ma 'xi dettalji simili li tħares cryptic iżda wkoll ħafna aktar. 852 00:54:12,540 --> 00:54:14,310 Let me imorru quddiem to home page Facebook hawn. 853 00:54:14,310 --> 00:54:17,480 Dan huwa l-iskrin li ħafna minna probabbilment qatt ma tara jekk inti toqgħod illoggjat kollha tal-ħin, 854 00:54:17,480 --> 00:54:19,830 iżda dan huwa verament il-paġna dar tagħhom. 855 00:54:19,830 --> 00:54:24,150 Jekk nagħmlu dan fil Chrome, avviż li inti tista 'pull up dawn menus kuntest ftit. 856 00:54:24,150 --> 00:54:26,980 Bl-użu Chrome, kemm jekk fuq Mac OS, Windows, Linux, jew bħalhom, 857 00:54:26,980 --> 00:54:31,840 jekk inti Kontroll click jew ikklikkja xellug, inti tista 'tipikament pull up menu li tidher bħal dan, 858 00:54:31,840 --> 00:54:35,870 fejn ftit għażliet tistenna, li waħda minnhom hija Sors Page View. 859 00:54:35,870 --> 00:54:39,920 Tista 'wkoll tipikament tikseb dawn l-affarijiet billi tmur l-menu View u poking madwar. 860 00:54:39,920 --> 00:54:42,750 Per eżempju, hawn taħt View, Developer huwa l-istess ħaġa. 861 00:54:42,750 --> 00:54:45,780 Jien ser jimxi 'l quddiem u tħares lejn Sors Page View. 862 00:54:45,780 --> 00:54:50,800 Dak li inti ser tara l-HTML li Mark kiteb li jirrappreżenta facebook.com. 863 00:54:50,800 --> 00:54:55,910 Huwa mess komplet hawn, imma aħna ser tara li dan jagħmel sens ftit aktar qabel twil. 864 00:54:55,910 --> 00:54:59,840 Iżda hemm xi xejriet hawn. Let me iscroll li Jittieħed bħal dan. 865 00:54:59,840 --> 00:55:05,730 Dan huwa diffiċli għal bniedem li jaqra, iżda avviż li hemm dan il-mudell ta 'parentesi angolati 866 00:55:05,730 --> 00:55:10,360 ma keywords bħal għażla, keywords bħal valur, xi strings kkwotati. 867 00:55:10,360 --> 00:55:15,660 Dan huwa fejn, meta inti ffirmaw għall-ewwel darba, speċifikat liema sena tat-twelid tiegħek. 868 00:55:15,660 --> 00:55:19,020 Dan menu drop-down ta 'snin tat-twelid huwa b'xi mod kodifikata hawn 869 00:55:19,020 --> 00:55:23,870 f'din il-lingwa imsejħa HTML, HyperText Markup Language. 870 00:55:23,870 --> 00:55:27,730 Fi kliem ieħor, meta browser tiegħek jitlob paġna web, 871 00:55:27,730 --> 00:55:30,610 titkellem din il-konvenzjoni imsejħa HTTP. 872 00:55:30,610 --> 00:55:35,170 Imma dak ma facebook.com tirrispondi għal dik it-talba ma? 873 00:55:35,170 --> 00:55:38,260 >> Huwa jirrispondi ma 'wħud minn dawn il-messaġġi cryptic, kif aħna ser tara fil-mument. 874 00:55:38,260 --> 00:55:43,760 Iżda l-maġġoranza ta 'rispons tiegħu huwa fil-forma ta HTML, HyperText Markup Language. 875 00:55:43,760 --> 00:55:47,170 Dik hija l-lingwa proprja ta 'web page huwa miktub. 876 00:55:47,170 --> 00:55:52,030 U liema web browser verament ma allura hi, mal-wasla ta 'xi ħaġa li tidher bħal dan, 877 00:55:52,030 --> 00:55:57,120 jaqraha fuq għal isfel, xellug għal-lemin, u kull darba li jara wieħed minn dawn parentesi angolati 878 00:55:57,120 --> 00:56:03,370 segwit minn keyword bħal għażla, ikollu din il-lingwa markup fil-mod xieraq. 879 00:56:03,370 --> 00:56:06,820 F'dan il-każ, ikun juri menu drop-down ta 'snin. 880 00:56:06,820 --> 00:56:09,240 Iżda għal darb'oħra, dan huwa mess kompluta li tħares lejn. 881 00:56:09,240 --> 00:56:16,630 Dan mhux minħabba l-iżviluppaturi Facebook manifest 0 għal 5 għall-istil, per eżempju. 882 00:56:16,630 --> 00:56:20,190 Dan huwa minħabba li ħafna tal-kodiċi li jiktbu, fil-fatt, bil-miktub beautifully, 883 00:56:20,190 --> 00:56:22,450 ukoll, ikkummenta: nicely indentati, u simili, 884 00:56:22,450 --> 00:56:26,080 iżda ta 'magni kors, kompjuters, browsers verament ma jagħtux kkritikat 885 00:56:26,080 --> 00:56:27,890 jekk kodiċi tiegħek huwa tajjeb styled. 886 00:56:27,890 --> 00:56:33,100 U fil-fatt, huwa kompletament ħela li taħbat l-ewlenin tab kollha dawk il-ħinijiet 887 00:56:33,100 --> 00:56:37,650 u li jpoġġu l-kummenti kollha matul kodiċi tiegħek u tagħżel ismijiet verament deskrittivi varjabbli 888 00:56:37,650 --> 00:56:42,340 għaliex jekk il-browser ma care, kollha qed tagħmel fl-aħħar tal-ġurnata huwa ħela bytes. 889 00:56:42,340 --> 00:56:46,660 >> Allura jirriżulta liema websites l-iktar tagħmel hu anke jekk il-source code għall facebook.com, 890 00:56:46,660 --> 00:56:49,550 għall cs50.net u kollha ta 'dawn is-siti l-oħra fuq l-Internet 891 00:56:49,550 --> 00:56:53,730 huma tipikament ukoll bil-miktub u sew kkummentaw u nicely indentati u simili, 892 00:56:53,730 --> 00:56:59,270 tipikament qabel l-websajt hija tpoġġi fuq l-Internet, il-kodiċi hija minified, 893 00:56:59,270 --> 00:57:02,970 fejn il-HTML u CSS l - xi ħaġa oħra aħna ser hekk ara - 894 00:57:02,970 --> 00:57:05,960 il-kodiċi JavaScript aħna ser hekk ara huwa kompressat, 895 00:57:05,960 --> 00:57:09,250 fejn ismijiet varjabbli twil issir X u Y u Z, 896 00:57:09,250 --> 00:57:13,900 u kollha ta 'dak whitespace li jagħmel kollox tfittex hekk li tinqara hija kollha jintrema, 897 00:57:13,900 --> 00:57:17,700 għaliex jekk inti taħseb dwar dan il-mod, Facebook gets paġna biljun hits kuljum - 898 00:57:17,700 --> 00:57:21,670 xi ħaġa crazy bħal dik - hekk jekk dak programmer biss li jkun anali 899 00:57:21,670 --> 00:57:26,660 hit l-ispazju bar darba żejjed biss biex inċiż xi linja tal-kodiċi dejjem tant aktar? 900 00:57:26,660 --> 00:57:29,500 X'hemm-implikazzjoni jekk Facebook priżervi li whitespace 901 00:57:29,500 --> 00:57:32,880 fil kollha tal-bytes li jibagħtu lura lejn nies fuq l-Internet? 902 00:57:32,880 --> 00:57:36,400 Tolqot il-bar-ispazju darba tagħtik byte żejda fil-fajl tiegħek. 903 00:57:36,400 --> 00:57:39,730 U jekk biljun persuna mbagħad jipproċedi li tniżżel il-home page dik il-ġurnata, 904 00:57:39,730 --> 00:57:42,060 kemm data aktar usted trasmessi fuq l-Internet? 905 00:57:42,060 --> 00:57:45,200 A gigabyte għall-ebda raġuni tajba. 906 00:57:45,200 --> 00:57:48,510 U mogħtija, għal-lott ta 'websajts din mhix tali kwistjoni jistgħu jegħlbuhom magħhom, 907 00:57:48,510 --> 00:57:51,030 iżda għall Facebook, għall-Google, għal xi wħud mill-aktar websajts popolari 908 00:57:51,030 --> 00:57:54,860 hemm inċentiv kbir finanzjarjament biex jagħmlu kodiċi tiegħek look like a mess 909 00:57:54,860 --> 00:57:58,980 sabiex inti qed tuża bħala bytes ftit kemm possibbli barra l allura kompressjoni lilha 910 00:57:58,980 --> 00:58:01,500 użu xi ħaġa bħal zip, algoriżmu imsejħa gzip, 911 00:58:01,500 --> 00:58:04,250 li l-browser ma għalik awtomatikament. Iżda dan huwa orribbli. 912 00:58:04,250 --> 00:58:08,060 Aħna qatt ma ser jitgħallmu xi ħaġa dwar websajts nies oħrajn u kif disinn paġni web 913 00:58:08,060 --> 00:58:09,680 jekk irridu nħarsu lejn dan bħal dan. 914 00:58:09,680 --> 00:58:13,620 >> Allura fortunatament, browsers bħall Chrome u IE u Firefox dawn il-jiem 915 00:58:13,620 --> 00:58:16,450 tipikament jiġu mal-għodod iżviluppatur mibnija fil-. 916 00:58:16,450 --> 00:58:21,730 Fil-fatt, jekk I jinżlu hawn biex Spezzjona Element jew jekk mmur View, Developer, 917 00:58:21,730 --> 00:58:25,220 u mur Għodod Developer espliċitament, 918 00:58:25,220 --> 00:58:27,640 dan il-tieqa fil-qiegħ ta l-iskrin tiegħi issa pops up. 919 00:58:27,640 --> 00:58:31,230 Huwa ftit intimidanti fl-ewwel għaliex hemm ħafna ta 'tabs familjari hawn, 920 00:58:31,230 --> 00:58:34,510 imma jekk I ikklikkja fuq Elementi it-triq kollha fil-qiegħ tax-xellug, 921 00:58:34,510 --> 00:58:38,810 Chrome hija ovvjament pretty intelliġenti. Huwa jaf kif tinterpreta kollha ta 'dan il-kodiċi. 922 00:58:38,810 --> 00:58:42,320 U iva, liema Chrome ma huwa cleans up kollha ta HTML Facebook. 923 00:58:42,320 --> 00:58:45,680 Anki jekk hemm mhux whitespace hemm, hemm Ma indentazzjoni hemm, 924 00:58:45,680 --> 00:58:51,120 issa avviż li jien tista 'tibda biex jinnaviga din il-paġna web l-aktar ġerarkiku. 925 00:58:51,120 --> 00:58:56,910 Jirriżulta li kull paġna tal-web miktub f'lingwa imsejjaħ HTML5 għandhom jibdew ma 'dan, 926 00:58:56,910 --> 00:59:03,980 din id-dikjarazzjoni DOCTYPE, biex ngħidu hekk: 927 00:59:03,980 --> 00:59:07,840 Huwa tip ta 'dawl u griż hemmhekk, iżda li l-linja ewwel ta' kodiċi f'dan il-fajl, 928 00:59:07,840 --> 00:59:12,080 u li biss jirrakkonta l-browser, "ħej, hawn taqa xi HTML5. Hawnhekk tidħol web page." 929 00:59:12,080 --> 00:59:18,490 L parentesi miftuħa 1 lil hinn minn dak li jiġri li jkun dan il-ħaġa, miftuħ parentesi tag HTML, 930 00:59:18,490 --> 00:59:22,320 u mbagħad jekk I adsa aktar profonda - dawn vleġeġ huma kompletament bla sens; 931 00:59:22,320 --> 00:59:25,140 dawn huma biss għall-finijiet preżentazzjoni, dawn mhumiex attwalment fil-fajl - 932 00:59:25,140 --> 00:59:30,300 avviż li ġewwa ta 'tag HTML Facebook, xi ħaġa li tibda ma' parentesi miftuħa 933 00:59:30,300 --> 00:59:32,910 u dakinhar kelma jissejjaħ tag. 934 00:59:32,910 --> 00:59:38,610 Allura ġewwa l-tikketta HTML hija apparentement tag ras u tag korp. 935 00:59:38,610 --> 00:59:41,930 Ġewwa tal-lametta ras issa huwa mess kollu għall Facebook 936 00:59:41,930 --> 00:59:45,620 minħabba li għandhom ħafna ta 'metadata u affarijiet oħra għall-marketing u r-reklamar. 937 00:59:45,620 --> 00:59:50,600 >> Imma jekk aħna iscroll, down, down, down, ejja ara fejn hu. Hawnhekk huwa. 938 00:59:50,600 --> 00:59:52,210 Dan huwa wieħed mill-inqas kemmxejn familjari. 939 00:59:52,210 --> 00:59:55,990 It-titolu tal-paġna dar Facebook, jekk inti qatt tfittex fil-tab fil-bar titolu tiegħek, 940 00:59:55,990 --> 00:59:59,060 huwa Merħba għall Facebook - Log In, Sign Up jew Learn More. 941 00:59:59,060 --> 01:00:01,110 Dak hu li inti tara fil-bar titolu Chrome, 942 01:00:01,110 --> 01:00:03,100 u li l-mod kif huwa rappreżentat fil-kodiċi. 943 01:00:03,100 --> 01:00:08,090 Jekk aħna jinjora kollox fir-ras, ħafna mill-imsaren ta 'paġna web huma fil-ġisem, 944 01:00:08,090 --> 01:00:10,940 u jirriżulta li l-kodiċi Facebook huwa ser tfittex aktar kumplessi 945 01:00:10,940 --> 01:00:14,540 minn aktar affarijiet aħna ser jiktbu inizjalment biss għaliex huwa kien mibnija matul is-snin, 946 01:00:14,540 --> 01:00:17,260 imma hemm lott kollu ta 'tikketti iskrittura, JavaScript kodiċi, 947 01:00:17,260 --> 01:00:18,870 li jagħmel il-websajt ħafna interattiv: 948 01:00:18,870 --> 01:00:22,330 jaraw aġġornamenti istatus istantanju jużaw lingwi bħal JavaScript. 949 01:00:22,330 --> 01:00:25,270 Hemm xi ħaġa imsejħa div, li hija diviżjoni ta 'paġna. 950 01:00:25,270 --> 01:00:27,940 Iżda qabel ma nikbru għal dak dettall, ejja jippruvaw li zoom out 951 01:00:27,940 --> 01:00:31,920 u ħarsa lejn verżjoni aktar sempliċi ta 'Facebook 1.0, biex ngħidu hekk. 952 01:00:31,920 --> 01:00:34,740 Hawn hu l-hello, dinja ta 'paġni tal-web. 953 01:00:34,740 --> 01:00:37,370 Hija dik id-dikjarazzjoni DOCTYPE fuq nett 954 01:00:37,370 --> 01:00:40,280 li huwa xi ftit differenti minn kull ħaġa oħra. 955 01:00:40,280 --> 01:00:46,130 Xejn aħna tikteb fil-paġna tal-web se tibda bil 01:00:48,880 u ħlief għal xi ħaġa imsejħa kummenti HTML. 957 01:00:48,880 --> 01:00:53,000 Iżda għall-parti l-kbira, kollox fil-paġna web huwa miftuħ parentesi, keyword, parentesi magħluqa. 958 01:00:53,000 --> 01:00:56,220 >> F'dan il-każ tista 'tara l-aktar sempliċi ta' paġni tal-web possibbli. 959 01:00:56,220 --> 01:01:00,260 Il-lametta HTML fih tag ras u fih tag korp, 960 01:01:00,260 --> 01:01:04,580 imma avviż li hemm dan il-kunċett tal-bidu u l-waqfien tags. 961 01:01:04,580 --> 01:01:11,360 Dan huwa l-tikketta bidu għal HTML, dan huwa l-tikketta qrib jew tag tmiem. 962 01:01:11,360 --> 01:01:15,400 Avviż li dawn qed tip ta 'opposti fis-sens li t-tikketta qrib jew tag aħħar 963 01:01:15,400 --> 01:01:20,030 tkun din quddiem mmejla ġewwa fih innifsu. 964 01:01:20,030 --> 01:01:23,540 Sadanittant, hemm xi lametta ras miftuħa hawn u tag ras mill-qrib hawn. 965 01:01:23,540 --> 01:01:26,880 >> Hemm xi titolu miftuħ u tag titolu qrib hawn. 966 01:01:26,880 --> 01:01:29,850 Il-fatt li stajt tpoġġi l-titlu fuq linja waħda, purament arbitrarja. 967 01:01:29,850 --> 01:01:33,760 Hija biss dehru qishom hija kienet ser tajbin nicely fuq linja waħda, so I ma jolqot laqtu Ikteb koppja darbiet. 968 01:01:33,760 --> 01:01:38,200 Sadanittant, il-korp li għamilt inċiż biss sabiex ikunu dejjem hekk ċara. 969 01:01:38,200 --> 01:01:41,050 Avviż li HTML hija lingwa pjuttost mutu. 970 01:01:41,050 --> 01:01:43,410 Fil-fatt, lura fil-jum ta 'qabel kien hemm edituri WYSIWYG 971 01:01:43,410 --> 01:01:46,770 u Microsoft Word fejn inti tista 'tgħid, "Make dan kuraġġużi, jagħmlu dan bil-korsiv," 972 01:01:46,770 --> 01:01:50,850 inti fil-fatt tip jikkmanda ftit fil esejs 20 + sena ilu 973 01:01:50,850 --> 01:01:55,740 fejn inti ngħid, "Jibdew jagħmlu dan it-test kuraġġużi. Stop tagħmel dan it-test kuraġġużi." 974 01:01:55,740 --> 01:01:59,010 "Jibdew jagħmlu dan korsiv test. Stop tagħmel dan korsiv test." 975 01:01:59,010 --> 01:02:01,850 >> Dak hu HTML jew kwalunkwe lingwa markup huwa. 976 01:02:01,850 --> 01:02:05,530 Din it-tabella 1 jgħid, "ħej, browser. Hawnhekk tidħol xi HTML." 977 01:02:05,530 --> 01:02:09,880 Il-lametta li jmiss jgħid, "ħej, browser. Hawnhekk tidħol il-kap, il-header ta 'paġna web tiegħi." 978 01:02:09,880 --> 01:02:11,650 "Ħej, browser. Hawnhekk tidħol it-titolu." 979 01:02:11,650 --> 01:02:15,880 U mbagħad hawn fuq, "ħej, browser. Dik hija għat-titlu." 980 01:02:15,880 --> 01:02:20,000 Allura dan huwa kif l-browser jaf li m'għadhomx juri karattri aktar minn hello, dinja 981 01:02:20,000 --> 01:02:21,860 fil-bar titolu. 982 01:02:21,860 --> 01:02:23,640 Sadanittant, dan jgħid, "Dik hija lilha għall-ras." 983 01:02:23,640 --> 01:02:28,340 Dan jgħid, "Hawnhekk tidħol il-korp Hawn hu l-korp attwali." - Litteralment, il-kliem hello, dinja. 984 01:02:28,340 --> 01:02:33,190 U dan jgħid hawnhekk, "Dik hija li għall-korp. Dik hija l-HTML." 985 01:02:33,190 --> 01:02:34,640 Allura browsers huma pjuttost mutu. 986 01:02:34,640 --> 01:02:39,920 Huma biss taqra dan il-għalf fuq għal isfel, xellug għal-lemin, u jagħmlu eżattament dak li qed mitlub biex tagħmel. 987 01:02:39,920 --> 01:02:41,860 Ejja fil-fatt jagħmlu eżempju ftit hawn. 988 01:02:41,860 --> 01:02:46,240 Let me jiftħu l-aktar sempliċi ta 'programmi fuq Mac tiegħi hawnhekk, jiġifieri TextEdit. 989 01:02:46,240 --> 01:02:48,220 Fuq Windows inti tista 'tuża Notepad.exe. 990 01:02:48,220 --> 01:02:50,520 Iżda din hija kollha li għandek bżonn biex tibda tagħmel paġni web. 991 01:02:50,520 --> 01:02:53,730 Jien ser jimxi 'l quddiem u biss kopja u paste dan il-kodiċi fis dan il-fajl. 992 01:02:53,730 --> 01:02:57,210 Jien ser jimxi 'l quddiem u jiffrankaw fuq id-desktop tiegħi, 993 01:02:57,210 --> 01:03:01,220 u jien ser jiffrankaw dan bħala hello.html, 994 01:03:01,220 --> 01:03:03,840 u issa l-fajl huwa msemmi hello.html. 995 01:03:03,840 --> 01:03:05,690 Hawnhekk huwa fuq id-desktop tiegħi. 996 01:03:05,690 --> 01:03:11,130 Let me issa tmur fi browser u jkaxkru l-fajl fil-browser. 997 01:03:11,130 --> 01:03:14,060 U voila, hawnhekk hija paġna tiegħi web ħafna ewwel. 998 01:03:14,060 --> 01:03:17,340 Avviż li t-titolu ta 'l-tab huwa hello, dinja bħala kull-titolu tag, 999 01:03:17,340 --> 01:03:20,040 u avviż li hello, dinja hija l-korp tal-paġna web tiegħi, 1000 01:03:20,040 --> 01:03:22,190 u Woo HOO-, jien fuq l-Internet. 1001 01:03:22,190 --> 01:03:24,700 >> Jien ma verament, id-dritt, għaliex dan il-fajl ma tkunx fuq l-Internet. 1002 01:03:24,700 --> 01:03:28,330 Dan jiġri li jkun fuq hard drive tiegħi lokali f'dak it-triq partikolari. 1003 01:03:28,330 --> 01:03:32,720 Iżda l-idea hija l-istess. Kollha għandna issa bżonn huwa web server li fih upload. 1004 01:03:32,720 --> 01:03:37,410 Iżda l-ewwel ejja fil-fatt tintroduċi kumplessità ftit aktar u stylization ftit aktar. 1005 01:03:37,410 --> 01:03:39,890 Din hija sempliċi, jekk boring, paġna tal-web. 1006 01:03:39,890 --> 01:03:41,990 Jirriżulta hemm tipi oħra ta 'tikketti nistgħu nużaw. 1007 01:03:41,990 --> 01:03:45,530 Per eżempju, hawn isfar stajt introduċa 2 tikketti ġodda. 1008 01:03:45,530 --> 01:03:49,630 Aħna mhux se jilagħbu ħafna ma 'dawn illum, iżda tinnota li l-tikketta rabta 1009 01:03:49,630 --> 01:03:52,520 b'xi mod jistenna differenti minn kull ħaġa oħra. 1010 01:03:52,520 --> 01:03:55,370 Il-lametta rabta jieħu dak li huma msejħa attributi, 1011 01:03:55,370 --> 01:03:59,770 u attribut hija xi ħaġa li jimmodifika l-imġiba ta 'tag. 1012 01:03:59,770 --> 01:04:03,840 F'dan il-każ dan mhuwiex l-aħjar għażla ta 'ismijiet, rabta, għaliex huwa tip ta' sens, 1013 01:04:03,840 --> 01:04:11,590 iżda din tag rabta jgħid, essenzjalment, jinkludi l-inkartament imsejjaħ styles.css ġewwa tal-paġna web tiegħi. 1014 01:04:11,590 --> 01:04:15,400 Inti tista 'taħseb ta' dan bħala analogu għall-C # Jinkludu direttiva. 1015 01:04:15,400 --> 01:04:19,650 Styles.css qed tirreferi għal lingwa differenti għal kollox li aħna mhux se jilagħbu bil llum, 1016 01:04:19,650 --> 01:04:23,790 iżda huwa għall-estetika: daqsijiet font, kuluri, ikkuttunar, indentazzjoni, marġini, 1017 01:04:23,790 --> 01:04:26,040 u kollha ta 'dak it-tip ta' dettall estetika. 1018 01:04:26,040 --> 01:04:28,820 Sadanittant, il-lametta iskrittura huwa funzjonalment simili, 1019 01:04:28,820 --> 01:04:33,140 iżda pjuttost milli jinkludu CSS, il-lingwa, din tinkludi lingwa oħra, JavaScript. 1020 01:04:33,140 --> 01:04:37,810 Allura fi kliem ieħor, dawn il-tags 2 I se eventwalment tkun tista 'tikteb il-paġna web tiegħi stess 1021 01:04:37,810 --> 01:04:41,490 iżda wkoll pull kodiċi li jien jew xi ħadd ieħor kiteb 1022 01:04:41,490 --> 01:04:44,350 sabiex inkunu jista 'joqgħod fuq spallejn nies oħra, nistgħu prattika tajba disinn, 1023 01:04:44,350 --> 01:04:46,120 factoring out kodiċi komuni. 1024 01:04:46,120 --> 01:04:49,090 Jekk Stajt ltqajna 10 paġni web differenti, dan ifisser li xi wħud mill-estetika tiegħi 1025 01:04:49,090 --> 01:04:52,490 jista 'jkun barra fatturati, ħafna bħall # Jinkludu, ġo fajl separat. 1026 01:04:52,490 --> 01:04:54,420 Allura aħna qed jkollna hemmhekk. 1027 01:04:54,420 --> 01:04:57,180 Imma ejja fil-fatt 1 tagħmel xi ħaġa aktar interessanti ma 'dan il-fajl. 1028 01:04:57,180 --> 01:05:01,110 >> Għal darb'oħra, dan huwa biss TextEdit. Jien mhux teknikament fuq l-Internet s'issa, iżda aħna ser naslu s'hemm. 1029 01:05:01,110 --> 01:05:04,910 Nixtieq li jagħmlu hello, dinja ftit aktar kuraġġuża milli hi. 1030 01:05:04,910 --> 01:05:10,890 Allura hello, ejja ngħidu arbitrarju għall kuraġġużi. 1031 01:05:10,890 --> 01:05:15,910 Għal darb'oħra, l-istorja hija l-istess: bonjour, comma, jibdew jagħmlu dan grassa, 1032 01:05:15,910 --> 01:05:19,730 imbagħad fid-dinja gets stampat b'tipa grassa, u dan ifisser stop-istampar dan b'tipa grassa. 1033 01:05:19,730 --> 01:05:24,020 Let me imorru quddiem u ħlief fajl tiegħi, mur lura għall Chrome, jien ser zoom biss hekk nistgħu naraw dan aħjar, 1034 01:05:24,020 --> 01:05:27,870 u rikarigu, u tkun taf tara li dinja issa hija b'tipa grassa. 1035 01:05:27,870 --> 01:05:31,810 Il-Web hija kollha dwar hyperlinks, so ejja imorru quddiem u tagħmel dan: 1036 01:05:31,810 --> 01:05:38,550 website favorit tiegħi huwa, ejja ngħidu, youtube.com. 1037 01:05:38,550 --> 01:05:43,810 Save, rikarigu. Okay. Hemm problemi koppja issa minbarra l hideousness tal-websajt. 1038 01:05:43,810 --> 01:05:47,310 1, jien pretty żgur I hit Ikteb hawn. U jien għamilt. 1039 01:05:47,310 --> 01:05:51,590 I mhux biss hit Ikteb, I wkoll indentati, prattikanti dak li aħna kont qed jippriedka dwar stil, 1040 01:05:51,590 --> 01:05:54,930 iżda tiegħi huwa dritt li jmiss dinja. 1041 01:05:54,930 --> 01:05:58,410 Allura għaliex huwa dan? Browsers biss tagħmel dak li jgħidulhom li jagħmlu. 1042 01:05:58,410 --> 01:06:04,010 I ma qal lill-browser, "linji Break hawn. Daħħal il-paragrafu break hawn." 1043 01:06:04,010 --> 01:06:07,820 Allura l-browser, ma jimpurtax jekk I hit Ritorn 30 darba, 1044 01:06:07,820 --> 01:06:10,820 huwa għadu għaddej biex id-dritt tiegħi li jmiss għall-dinja. 1045 01:06:10,820 --> 01:06:15,930 What I really għandek tagħmel hawnhekk huwa ngħid xi ħaġa simili
, daħħal pawża linja. 1046 01:06:15,930 --> 01:06:17,940 >> U fil-fatt, waqfa linja huwa tip ta 'ħaġa stramb 1047 01:06:17,940 --> 01:06:21,650 għaliex inti ma tistax verament bidu li jiċċaqalqu lejn Stat linja, imbagħad tagħmel xi ħaġa, 1048 01:06:21,650 --> 01:06:25,380 u imbagħad jieqaf jimxu għal linja ġdida. Huwa tip ta 'operazzjoni atomiku. 1049 01:06:25,380 --> 01:06:28,140 Inti jew tagħmel dan jew inti ma. Inti hit Ikteb jew inti ma. 1050 01:06:28,140 --> 01:06:33,390 Allura br huwa xi ftit ta 'tag differenti, u għalhekk għandi bżonn biex issolvi kemm miftuħa u jingħalaq 1051 01:06:33,390 --> 01:06:35,230 kollha f'daqqa. 1052 01:06:35,230 --> 01:06:37,500 Is-sintassi għal dan hija din. 1053 01:06:37,500 --> 01:06:41,760 Teknikament, inti tista 'tagħmel xi ħaġa bħal din f'ċerti verżjonijiet tal HTML, 1054 01:06:41,760 --> 01:06:45,600 iżda dan huwa biss stupid għaliex hemm l-ebda raġuni biex tibda u tieqaf xi ħaġa 1055 01:06:45,600 --> 01:06:48,420 jekk inti tista 'minflok tagħmel dan kollu f'daqqa. 1056 01:06:48,420 --> 01:06:52,310 Tirrealizza li HTML5 ma strettament jeħtieġu dan mmejla, 1057 01:06:52,310 --> 01:06:55,410 sabiex inti se tara kotba u r-riżorsi online li ma jkollhomx dan, 1058 01:06:55,410 --> 01:06:59,780 iżda għal miżura tajba ejja prattika l-simetrija li Rajna s'issa. 1059 01:06:59,780 --> 01:07:02,870 Dan ifisser li t-tikketta hija kemm miftuħa u magħluqa. 1060 01:07:02,870 --> 01:07:05,220 Allura issa let me jiffrankaw fajl tiegħi, mur lura hawn. 1061 01:07:05,220 --> 01:07:10,240 Okay, hekk huwa tibda tħares aħjar, ħlief il-Web naf huwa tip ta clickable, 1062 01:07:10,240 --> 01:07:13,610 u għadhom youtube hawn ma tidhirx li twassal għal xejn. 1063 01:07:13,610 --> 01:07:17,560 Dak għax minkejja li qisu rabta, il-browser ma jkunx jaf li per se, 1064 01:07:17,560 --> 01:07:20,670 so I għandhom tgħid il-browser li dan huwa rabta. 1065 01:07:20,670 --> 01:07:22,620 >> Il-mod biex isir dan huwa l-użu ta 'lametta ankra: 1066 01:07:22,620 --> 01:07:26,770 01:07:35,900 = "Http://www.youtube.com"> 1068 01:07:35,900 --> 01:07:38,490 u let me jimxu dan għal linja ġdida biss hekk huwa ftit aktar tinqara, 1069 01:07:38,490 --> 01:07:40,060 u jien ser tiċkien-daqs tat-tipa. 1070 01:07:40,060 --> 01:07:43,890 Am I isir s'issa? No M'hemm għaddej biex tkun din id-dikotomija. 1071 01:07:43,890 --> 01:07:46,760 Dan tikketta, l-tikketta ankra, tabilħaqq tieħu attribut, 1072 01:07:46,760 --> 01:07:52,900 li timmodifika l-imġiba tagħha, u l-valur ta 'dik l-attribut huwa apparentement URL YouTube s. 1073 01:07:52,900 --> 01:07:56,380 Iżda avviż l-dikotomija li huwa biss minħabba li l-URL int ser, 1074 01:07:56,380 --> 01:08:01,020 dan ma jfissirx li għandu jkun l-kelma li int tenfasizza u jagħmlu rabta. 1075 01:08:01,020 --> 01:08:03,960 Pjuttost, din tista 'tkun xi ħaġa bħal din. 1076 01:08:03,960 --> 01:08:10,870 Allura jien ngħid tieqaf tagħmel din il-kelma hyperlink billi tuża l-tikketta ankra qrib. 1077 01:08:10,870 --> 01:08:12,650 Avviż Jien ma tagħmel dan. 1078 01:08:12,650 --> 01:08:15,890 1, dan se jkun biss ħela ta 'ħin ta' kulħadd u mhuwiex neċessarju. 1079 01:08:15,890 --> 01:08:19,290 >> Li tagħlaq tag, inti biss isemmu l-isem tal-lametta ġdid. 1080 01:08:19,290 --> 01:08:21,800 Inti ma jsemmi l-ebda mill-attributi. 1081 01:08:21,800 --> 01:08:26,189 Mela ejja ħlief li, jmorru lura. Okay, voila, issa huwa blu u hyperlinked. 1082 01:08:26,189 --> 01:08:29,430 Jekk I ikklikkja dan, I attwalment do mur YouTube. 1083 01:08:29,430 --> 01:08:32,529 Allura anke jekk il-paġna web tiegħi ma tkunx fuq l-Internet, huwa inqas HTML, 1084 01:08:32,529 --> 01:08:37,930 u jekk aħna let l-Internet ilaħħqu, aħna fil-fatt jispiċċaw hawn fuq youtube.com. 1085 01:08:37,930 --> 01:08:40,670 U jien tista 'tmur lura u hawnhekk il-paġna web tiegħi. Iżda Avviż dan. 1086 01:08:40,670 --> 01:08:43,120 Jekk inti stajt qatt gotten spam jew attakk phishing, 1087 01:08:43,120 --> 01:08:45,850 issa inti għandek il-ħila wara biss ħames minuti biex jagħmlu l-istess. 1088 01:08:45,850 --> 01:08:50,920 Aħna tista 'tmur hawn u tagħmel xi ħaġa simili www.badguy.com 1089 01:08:50,920 --> 01:08:59,319 jew ikun x'ikun l-websajt vaga hija, u allura inti tista 'tgħid tivverifika PayPal kont tiegħek. 1090 01:08:59,319 --> 01:09:04,840 [Rires] U issa dan se jmorru għall badguy.com, li jien mhux ser ikklikkja fuq 1091 01:09:04,840 --> 01:09:08,000 għaliex għandi ebda idea fejn dan iwassal. [Daħk] 1092 01:09:08,000 --> 01:09:10,859 >> Imma issa għandna l-ħila li attwalment jispiċċaw hemmhekk. 1093 01:09:10,859 --> 01:09:12,640 Allura aħna qed verament biss jibdew tobrox il-wiċċ. 1094 01:09:12,640 --> 01:09:15,830 Aħna ma l-ipprogrammar per se; aħna qed miktub lingwa markup. 1095 01:09:15,830 --> 01:09:18,569 Iżda hekk kif aħna round vokabularju tagħna fil HTML, 1096 01:09:18,569 --> 01:09:21,520 aħna ser nintroduċu PHP, ta 'lingwa ta' programmar attwali 1097 01:09:21,520 --> 01:09:26,859 li se jħallina naħsdu biex jiġġeneraw HTML awtomatikament, jiġġeneraw CSS awtomatikament, 1098 01:09:26,859 --> 01:09:29,430 sabiex inkunu nistgħu jibdew nhar l-Erbgħa biex jimplimentaw, jiġifieri, 1099 01:09:29,430 --> 01:09:31,700 stess search engine tagħna u aktar. 1100 01:09:31,700 --> 01:09:34,770 Iżda aktar fuq li fi ftit jiem. Aħna ser tara int imbagħad. 1101 01:09:34,870 --> 01:09:39,000 >> [CS50.TV]