1 00:00:00,000 --> 00:00:07,700 2 00:00:07,700 --> 00:00:15,180 >> SPEAKER: OK, torej, ne boste verjeli, ampak prejšnji teden, v ponedeljek, v Pierce, I 3 00:00:15,180 --> 00:00:16,090 je bil v kleti. 4 00:00:16,090 --> 00:00:17,010 Nikoli nisem šel na Pierce. 5 00:00:17,010 --> 00:00:20,530 In nikoli se ne bom spet nazaj, ker Pustila sem moje stvari pri miru, 6 00:00:20,530 --> 00:00:23,950 kot je, pet minut in nekdo Ukradel moj računalnik in moje 7 00:00:23,950 --> 00:00:26,050 telefon iz mojega nahrbtnika. 8 00:00:26,050 --> 00:00:28,780 Kar pomeni, da sem ga dobil nazaj, in nato pa manj kot teden dni kasneje 9 00:00:28,780 --> 00:00:30,220 Prav imaš spet ukradli. 10 00:00:30,220 --> 00:00:31,570 >> In potem je dobil vklopljen - 11 00:00:31,570 --> 00:00:34,540 Find My iPhone nadaljuje da bi nekoristno. 12 00:00:34,540 --> 00:00:37,340 Zato sem še naprej spodbujala ga ne bodo uporabili. 13 00:00:37,340 --> 00:00:42,270 Izkazalo se je na enkrat, in je bila v MIT, kot 15 minut kasneje, in oseba 14 00:00:42,270 --> 00:00:45,770 klical telefonsko številko, ki je pokazala, v mojem AT & T dnevniku klicev. 15 00:00:45,770 --> 00:00:48,830 >> Zato sem šel na spletu, ki se imenuje, da telefon številko, pa se je ravno to 16 00:00:48,830 --> 00:00:50,540 odzivnikom v španščini. 17 00:00:50,540 --> 00:00:52,520 In sem se, ker nisem slišal zanj. 18 00:00:52,520 --> 00:00:54,800 Torej sem imel, da bi dobili novo računalnik in telefon. 19 00:00:54,800 --> 00:00:55,150 Vem. 20 00:00:55,150 --> 00:00:56,326 Ja. 21 00:00:56,326 --> 00:01:00,110 Ampak, če vi želite, da v čip z mojim Računalnik sklad po tem, da je, zakaj 22 00:01:00,110 --> 00:01:01,030 Jaz sem te vprašal tukaj. 23 00:01:01,030 --> 00:01:02,280 Samo hecam. 24 00:01:02,280 --> 00:01:04,239 25 00:01:04,239 --> 00:01:07,420 Toda to je bilo res žalostno in travmatično. 26 00:01:07,420 --> 00:01:10,700 >> Ampak to je vse, zdaj nazaj, in da je bila zato -p nastavite 8 trajalo tako dolgo, ker 27 00:01:10,700 --> 00:01:12,480 Nisem imel računalnik. 28 00:01:12,480 --> 00:01:13,730 In kdo ga je ukradel. 29 00:01:13,730 --> 00:01:16,940 In sem po e-pošti, sprašuje, če so bi vaš razred-p nastavite 8. 30 00:01:16,940 --> 00:01:18,790 Vendar pa je rekel ne. 31 00:01:18,790 --> 00:01:20,000 In sem si mislil, lahko dobim moj računalnik nazaj? 32 00:01:20,000 --> 00:01:21,270 In oni so, kot so, ne. 33 00:01:21,270 --> 00:01:22,130 Samo hecam. 34 00:01:22,130 --> 00:01:22,930 >> OK. 35 00:01:22,930 --> 00:01:28,140 To je naš končni del, in moram nekaj - imamo samo tri 36 00:01:28,140 --> 00:01:29,790 stvari na dnevnem redu. 37 00:01:29,790 --> 00:01:31,330 Bomo govorili malo O vodniku Q. 38 00:01:31,330 --> 00:01:33,900 Potem bomo porabili 15 minut na hladnem demo. 39 00:01:33,900 --> 00:01:36,890 Potem bomo vsi pravijo, Poslovite se od drugega. 40 00:01:36,890 --> 00:01:41,460 Ne boste res potrebujejo svoje računalnike ali pero ali papir za zapiske, ali 41 00:01:41,460 --> 00:01:42,410 sledite skupaj. 42 00:01:42,410 --> 00:01:45,620 Torej predvidevam, če imate računalnik gor, potem ste na Facebooku. 43 00:01:45,620 --> 00:01:46,530 Samo povem. 44 00:01:46,530 --> 00:01:49,650 Razen če ste izpolnite Q različna, kar je prva. 45 00:01:49,650 --> 00:01:50,690 >> Različna Q je odprt. 46 00:01:50,690 --> 00:01:53,520 Imeli ste e-pošto o tem. 47 00:01:53,520 --> 00:01:56,930 Ko je vse Q stvari predložiti konec leta, sem dobil vse 48 00:01:56,930 --> 00:02:03,710 Komentarji Q pri ocenah iz vsakogar , ki se odloči, da mi povratne informacije. 49 00:02:03,710 --> 00:02:04,810 In ko gredo, tako da boste v Q - 50 00:02:04,810 --> 00:02:07,440 Ne vem, če lahko to storite, Jeff, ker si študent in razširitev. 51 00:02:07,440 --> 00:02:12,730 Toda, ko greste v Q, če tega še niste to storiti, preden boste izbrali vaš 52 00:02:12,730 --> 00:02:14,020 učitelj, ki je David Malan. 53 00:02:14,020 --> 00:02:14,970 Moraš ga narediti. 54 00:02:14,970 --> 00:02:15,690 >> In potem si lahko izberete TFS. 55 00:02:15,690 --> 00:02:17,750 In si lahko izberete kar TFS, kot želite. 56 00:02:17,750 --> 00:02:18,990 Vendar pa obstajajo 60 izmed nas. 57 00:02:18,990 --> 00:02:20,350 Vam ni treba, da poberem vse. 58 00:02:20,350 --> 00:02:23,090 Lahko samo po mene, ali pa samo kramp nekaj drugih ljudi, če želite, da 59 00:02:23,090 --> 00:02:24,470 jim daje povratne informacije, kot dobro. 60 00:02:24,470 --> 00:02:27,595 In potem boste dobili rezultate na vseh teh različnih osi, nato pa lahko pustite 61 00:02:27,595 --> 00:02:28,570 jim povratne informacije. 62 00:02:28,570 --> 00:02:31,520 >> In potem, kot mesec dni kasneje, Jaz bom vse, da povratne informacije. 63 00:02:31,520 --> 00:02:34,570 In tako kot povratne informacije ste bili mi daje skozi semester, sem 64 00:02:34,570 --> 00:02:35,790 preberi vse to. 65 00:02:35,790 --> 00:02:39,620 In to je res koristno in pomaga mi rastejo kot učitelj in kot 66 00:02:39,620 --> 00:02:40,680 posameznika. 67 00:02:40,680 --> 00:02:43,360 Zato vas prosim, vzemite nekaj časa, da to storite. 68 00:02:43,360 --> 00:02:45,020 Mi smo le, da bo tu za, recimo, 30 minut. 69 00:02:45,020 --> 00:02:48,090 Torej, če želite, na koncu to, da traja pet minut, in samo izpolnite 70 00:02:48,090 --> 00:02:49,960 Q, saj ne bo več časa kot to. 71 00:02:49,960 --> 00:02:53,410 To bi bilo čudovito, in tudi vi dobili svoje ocene vrnil hitreje, če 72 00:02:53,410 --> 00:02:54,620 boste izpolnili Q. 73 00:02:54,620 --> 00:02:56,580 >> Tako je večina od vas naredil, da je pred - 74 00:02:56,580 --> 00:02:58,240 ali ne, približno polovica od vas so storili prej. 75 00:02:58,240 --> 00:03:00,060 Ampak, če ste novinec, to je tisto, kar je. 76 00:03:00,060 --> 00:03:01,910 To bo enaka za vse razrede. 77 00:03:01,910 --> 00:03:02,270 Stori to. 78 00:03:02,270 --> 00:03:02,900 To traja pet minut. 79 00:03:02,900 --> 00:03:07,610 Pa tudi, če vam je malce hudo, to ni najhujša stvar 80 00:03:07,610 --> 00:03:10,270 na svetu, ker sem zagotovo vzeti resno. 81 00:03:10,270 --> 00:03:13,000 >> Torej, če mi pustite smeška, Bom cenim. 82 00:03:13,000 --> 00:03:17,550 Ampak jaz bi tudi zelo vesel, če ti me je pustila več kot smeška. 83 00:03:17,550 --> 00:03:18,270 Ampak to je odvisno od vas. 84 00:03:18,270 --> 00:03:21,540 Ne morem vam povedati - ali je všeč veliko smeška soočajo s kapitalom D. To bi 85 00:03:21,540 --> 00:03:23,060 še bolje. 86 00:03:23,060 --> 00:03:27,860 >> OK, to je vse, kar imam za Q. Če Za vsa vprašanja, ki jih je mogoče vprašati 87 00:03:27,860 --> 00:03:29,370 jaz, ampak precej samoumevno. 88 00:03:29,370 --> 00:03:31,090 Samo, prosim, ga izpolnite. 89 00:03:31,090 --> 00:03:34,390 Jaz bi res cenim, in to pomeni, da mi veliko. 90 00:03:34,390 --> 00:03:38,910 >> OK, to je tisto, kar bomo porabili 15 minut skozi. 91 00:03:38,910 --> 00:03:39,800 Jaz ti bom pokazal nekaj kode. 92 00:03:39,800 --> 00:03:42,080 Mislim, da je res kul, in to me več 93 00:03:42,080 --> 00:03:43,810 vzbuja v računalništvu. 94 00:03:43,810 --> 00:03:46,480 Zato upam, da bo to storil enako za vse vas. 95 00:03:46,480 --> 00:03:51,760 >> Bomo odprli - in vse to Koda bom poslal, da vas kasneje. 96 00:03:51,760 --> 00:03:52,680 Vendar smo le, da bo odprla - 97 00:03:52,680 --> 00:03:54,310 Jaz sem v mojem terminalu - 98 00:03:54,310 --> 00:03:56,810 bomo odprli ta program imenovanega [? MySum. ?] 99 00:03:56,810 --> 00:04:01,290 100 00:04:01,290 --> 00:04:02,540 >> Lahko vsi prebrali, da je ali naj bi bilo večje? 101 00:04:02,540 --> 00:04:07,670 102 00:04:07,670 --> 00:04:13,040 Mi lahko kdo pove, kaj je ta koda bo naredil, ko sem teči, ali kaj je to 103 00:04:13,040 --> 00:04:14,320 Program bo naredil, ko sem teči? 104 00:04:14,320 --> 00:04:30,710 105 00:04:30,710 --> 00:04:32,400 >> [? Avi,?] Kaj mislite to se dogaja, da naredim? 106 00:04:32,400 --> 00:04:33,335 Finish žvečenje. 107 00:04:33,335 --> 00:04:35,033 Ne bi smel govoriti z odprtimi usti. 108 00:04:35,033 --> 00:04:38,330 109 00:04:38,330 --> 00:04:42,860 >> PUBLIKA: Ali bo kup Argumenti, našli vsoto od njih se vračajo 110 00:04:42,860 --> 00:04:45,285 Vsota, nato pa ga natisnete ven? 111 00:04:45,285 --> 00:04:53,045 Ali je potrebno v dveh argumentov, in potem pa [neslišno]. 112 00:04:53,045 --> 00:04:56,460 In potem se natisne karkoli so rezultati. 113 00:04:56,460 --> 00:04:58,100 >> SPEAKER: Blizu, zelo blizu. 114 00:04:58,100 --> 00:04:59,840 Kdo želite dodati [? kaj Avi?] rekel? 115 00:04:59,840 --> 00:05:04,830 116 00:05:04,830 --> 00:05:07,293 Ali boste morali dati tega programa vsi argumenti v ukazni vrstici? 117 00:05:07,293 --> 00:05:09,145 >> PUBLIKA: Ne 118 00:05:09,145 --> 00:05:09,610 >> SPEAKER: Ne 119 00:05:09,610 --> 00:05:11,250 Kaj se zgodi, če ga ne dajo vsi argumenti v ukazni vrstici? 120 00:05:11,250 --> 00:05:12,500 Pravkar sem napisati dot slash MySum. 121 00:05:12,500 --> 00:05:15,145 122 00:05:15,145 --> 00:05:16,630 >> PUBLIKA: 1 plus 2 je enako 3. 123 00:05:16,630 --> 00:05:17,250 >> SPEAKER: 1 plus 2 je enako 3. 124 00:05:17,250 --> 00:05:18,570 In bomo natisnete to. 125 00:05:18,570 --> 00:05:19,450 Točno tako. 126 00:05:19,450 --> 00:05:21,370 Videli boste, da je tiskalno f postavka na dnu. 127 00:05:21,370 --> 00:05:23,450 To bo izpisal A, B, in potem vsota a in b. 128 00:05:23,450 --> 00:05:26,360 In mislim, da si domnevati, da Vsota deluje pravilno. 129 00:05:26,360 --> 00:05:28,120 Dobra predpostavka. 130 00:05:28,120 --> 00:05:32,250 >> OK, in kaj se zgodi, če da ga kaj argument? 131 00:05:32,250 --> 00:05:33,010 [? Manu? ?] 132 00:05:33,010 --> 00:05:36,230 >> PUBLIKA: To bomo dodali karkoli Prvi argument je, da b. 133 00:05:36,230 --> 00:05:37,150 Ali 2, žal. 134 00:05:37,150 --> 00:05:38,480 >> SPEAKER: Pravica do 2. 135 00:05:38,480 --> 00:05:42,470 Ali kdo ve, kaj strtol počne? 136 00:05:42,470 --> 00:05:43,960 To je v bistvu atoi. 137 00:05:43,960 --> 00:05:47,240 Atoi je pravzaprav fancy verzija - 138 00:05:47,240 --> 00:05:49,600 ali enostavnejša različica strtol. 139 00:05:49,600 --> 00:05:51,790 Ampak to dejansko uporablja strtol. 140 00:05:51,790 --> 00:05:54,610 141 00:05:54,610 --> 00:05:58,010 In sem ugotovil, da je, ker sem si želel nekaj podobnega atoi, in potem, ko sem 142 00:05:58,010 --> 00:06:01,110 ni atoi, sem prebral tukaj. 143 00:06:01,110 --> 00:06:04,380 In sem našel "to vedenje je enak kot "strtol. 144 00:06:04,380 --> 00:06:06,850 Torej, to je v bistvu za atoi vse namene. 145 00:06:06,850 --> 00:06:09,320 In vidiš, da uporabite tudi za nično in 10. 146 00:06:09,320 --> 00:06:14,390 >> Ta dejansko omogoča, da sprejme niz, in ga pretvori v številko, in izberite 147 00:06:14,390 --> 00:06:15,970 izhodiščno želite, da to storite noter 148 00:06:15,970 --> 00:06:17,370 Torej je to osnova 10 tukaj. 149 00:06:17,370 --> 00:06:20,455 Lahko bi naredil bazo dva za eno decimalko, Osnova za 16 šestnajstiškem. 150 00:06:20,455 --> 00:06:22,090 To je zelo kul. 151 00:06:22,090 --> 00:06:25,860 Ampak skrajšam zgodbo, to sta potrebna dva številke in jih sešteje. 152 00:06:25,860 --> 00:06:29,260 >> Torej, kaj je prost. 153 00:06:29,260 --> 00:06:32,560 In boste tudi opazili, da so nekatere stvari - 154 00:06:32,560 --> 00:06:37,830 tako da imam Makefile tukaj, in Če odprete, da se nekaterih stvari 155 00:06:37,830 --> 00:06:39,270 boste opazili, so različni. 156 00:06:39,270 --> 00:06:42,370 Zlasti ta argument tukaj, boste verjetno 157 00:06:42,370 --> 00:06:43,010 ni videl. 158 00:06:43,010 --> 00:06:45,770 Na splošno, bomo prevedite stvari s pomišljajem nič, nič. 159 00:06:45,770 --> 00:06:51,500 Dash nič, nič, pomeni, ne delaj koli optimizacije, prevajalnik. 160 00:06:51,500 --> 00:06:54,950 Ne poskušajte narediti kaj posebnega, ali kaj narediti hitreje teči, ali pa 161 00:06:54,950 --> 00:06:56,530 znebite spremenljivk, ki so potrebne. 162 00:06:56,530 --> 00:06:58,080 Ne optimizirati to kodo na vse, 163 00:06:58,080 --> 00:07:00,110 >> Sprašujem za tretje ravni optimizacija. 164 00:07:00,110 --> 00:07:02,580 Torej, jaz vprašam prevajalnik narediti Veliko optimizacije. 165 00:07:02,580 --> 00:07:05,870 Lahko spremenim v makefile, ko imate to kodo, če želite 166 00:07:05,870 --> 00:07:07,190 videti različne stvari. 167 00:07:07,190 --> 00:07:08,660 Katere bomo prikazali v drugem. 168 00:07:08,660 --> 00:07:12,080 Tako smo vodim vsoto 1 plus 2 plus 3. 169 00:07:12,080 --> 00:07:13,445 Nekdo mi dva argumenta. 170 00:07:13,445 --> 00:07:17,221 171 00:07:17,221 --> 00:07:18,210 >> PUBLIKA: 4 in 5. 172 00:07:18,210 --> 00:07:18,966 >> SPEAKER: 4 in 5. 173 00:07:18,966 --> 00:07:19,900 Hvala vam. 174 00:07:19,900 --> 00:07:20,860 Super, da deluje. 175 00:07:20,860 --> 00:07:25,700 Kaj so nekateri drugi dobri argumenti poskusiti, da poskrbite, da bo to delovalo? 176 00:07:25,700 --> 00:07:27,050 Kdorkoli? 177 00:07:27,050 --> 00:07:27,430 >> PUBLIKA: 0. 178 00:07:27,430 --> 00:07:29,210 >> SPEAKER: 0 in? 179 00:07:29,210 --> 00:07:31,010 >> PUBLIKA: Negativno 3. 180 00:07:31,010 --> 00:07:32,040 >> SPEAKER: Deluje. 181 00:07:32,040 --> 00:07:33,670 Ampak to so bili dobra izbira. 182 00:07:33,670 --> 00:07:36,600 OK, gremo nazaj. 183 00:07:36,600 --> 00:07:38,540 To je mysum.c. 184 00:07:38,540 --> 00:07:42,440 Opazili boste, tam je tudi nekaj imenovano sumfunction.c. 185 00:07:42,440 --> 00:07:48,110 In to pravi, oh, nekaj definirana v sumfunction.c. 186 00:07:48,110 --> 00:07:51,480 Jaz ne vključujejo te datoteke tukaj ker se mi ni treba. 187 00:07:51,480 --> 00:07:54,840 Vendar sem jo povezati v trenutku, ko sem zbrati, ki vas bodo opazili. 188 00:07:54,840 --> 00:07:57,380 >> Pojdimo se pomaknete navzgor. 189 00:07:57,380 --> 00:08:02,880 Videli smo, ko smo zbrani mysum, pravico Tam smo povezani v binarno od 190 00:08:02,880 --> 00:08:04,130 sumfunction.o. 191 00:08:04,130 --> 00:08:05,780 192 00:08:05,780 --> 00:08:08,470 In ne rabim datoteko glave ker je seveda, da je 193 00:08:08,470 --> 00:08:09,240 Izjava funkcijo. 194 00:08:09,240 --> 00:08:12,200 Tako oster vključevati normalno le izhodov v deklaraciji funkcije. 195 00:08:12,200 --> 00:08:13,730 Tukaj sem samo dal naravnost v kodeksu. 196 00:08:13,730 --> 00:08:16,370 In tako moram storiti, je povezava v binarno, ki sem jo naredil. 197 00:08:16,370 --> 00:08:19,950 >> Kakršne koli ugibanja, za kar je v sumfunction.c? 198 00:08:19,950 --> 00:08:21,950 Kaj kodo sem napisal v sumfunction.c? 199 00:08:21,950 --> 00:08:25,445 200 00:08:25,445 --> 00:08:26,695 >> PUBLIKA: [neslišno]. 201 00:08:26,695 --> 00:08:29,460 202 00:08:29,460 --> 00:08:30,630 >> SPEAKER: Vse ugibanja? 203 00:08:30,630 --> 00:08:30,940 Ja? 204 00:08:30,940 --> 00:08:33,710 >> Občinstvo: Mislim, opredeljuje nekateri [neslišno]. 205 00:08:33,710 --> 00:08:33,975 >> Zvočnik: Da. 206 00:08:33,975 --> 00:08:37,650 Torej, pišem int vsota int. 207 00:08:37,650 --> 00:08:41,120 Pišem te vrstice, potem pa sem imel odprt kodrasti brace, zaprta skodrane opornik. 208 00:08:41,120 --> 00:08:46,160 Kaj misliš, da pišem notri tiste zaviti oklepaji, znotraj te funkcije? 209 00:08:46,160 --> 00:08:46,600 Ja? 210 00:08:46,600 --> 00:08:48,150 >> PUBLIKA: Nazaj enaka. 211 00:08:48,150 --> 00:08:50,010 >> Procesor: To je res dobro ugibanje. 212 00:08:50,010 --> 00:08:51,720 Kdo misli, [? Manu?] Ima prav? 213 00:08:51,720 --> 00:08:54,122 Piše se vrnete plus b. 214 00:08:54,122 --> 00:08:55,860 OK, ne vsi. 215 00:08:55,860 --> 00:08:56,520 [? Akshar,?] 216 00:08:56,520 --> 00:08:57,390 ti tudi? 217 00:08:57,390 --> 00:09:00,430 Ste prepričani? 218 00:09:00,430 --> 00:09:01,680 OK. 219 00:09:01,680 --> 00:09:09,551 220 00:09:09,551 --> 00:09:10,050 Kaj? 221 00:09:10,050 --> 00:09:11,662 >> PUBLIKA: pira si ga narobe. 222 00:09:11,662 --> 00:09:13,000 >> Govoril je: Ne, nisem. 223 00:09:13,000 --> 00:09:13,966 Ja, samo hecam se. 224 00:09:13,966 --> 00:09:15,300 Prav imaš. 225 00:09:15,300 --> 00:09:15,930 To je točno to, kar pravi. 226 00:09:15,930 --> 00:09:17,110 To je vrnitev plus b. 227 00:09:17,110 --> 00:09:18,570 To naredi veliko smisla. 228 00:09:18,570 --> 00:09:20,240 >> OK, gremo nazaj. 229 00:09:20,240 --> 00:09:21,490 Bomo videli, kako glave - 230 00:09:21,490 --> 00:09:24,540 231 00:09:24,540 --> 00:09:25,660 da je tip donos. 232 00:09:25,660 --> 00:09:29,100 Ne pozabite, da smo videli, da je dan eno, vrnitev vrsto funkcije, vendar gre 233 00:09:29,100 --> 00:09:30,160 pred imenom funkcije int. 234 00:09:30,160 --> 00:09:31,560 Tukaj sem napisal int. 235 00:09:31,560 --> 00:09:35,680 Kaj misliš, da se bo zgodilo, če pri tem funkcija, ne pišem int, vendar 236 00:09:35,680 --> 00:09:38,270 Pišem nepodpisani? 237 00:09:38,270 --> 00:09:41,050 Razlika je seveda, da da nepodpisani predstavlja le pozitivno 238 00:09:41,050 --> 00:09:43,620 cela števila, in int lahko pozitiven ali negativen. 239 00:09:43,620 --> 00:09:45,450 >> Tako da sem se spremenila vrnitev Vrsta te funkcije. 240 00:09:45,450 --> 00:09:49,370 Ta številka se ne ujema to vračanje vnesite tukaj. 241 00:09:49,370 --> 00:09:50,925 Kaj misliš, da se bo zgodilo ko sem prevedite? 242 00:09:50,925 --> 00:09:53,840 243 00:09:53,840 --> 00:09:56,240 Moral bi vpij name. 244 00:09:56,240 --> 00:09:57,700 Brez dretja. 245 00:09:57,700 --> 00:10:00,050 >> Kaj pa, ko sem zagnati program? 246 00:10:00,050 --> 00:10:05,810 Naredimo pred 0 negativnih 3 ali negativna 1. 247 00:10:05,810 --> 00:10:10,180 Še vedno deluje, čeprav pravim to je vračanje nepodpisano celo število. 248 00:10:10,180 --> 00:10:12,060 Jasno je, da se ne bo vrnil nepodpisani celo število. 249 00:10:12,060 --> 00:10:13,520 To je vračanje podpisano celo število. 250 00:10:13,520 --> 00:10:16,130 To je vračanje negativnega 1. 251 00:10:16,130 --> 00:10:17,830 OK, to je čudno. 252 00:10:17,830 --> 00:10:27,030 >> Kaj pa, če grem v tu in to naredil? 253 00:10:27,030 --> 00:10:29,700 Tako sem vse spremenila od int do nepodpisani. 254 00:10:29,700 --> 00:10:31,590 To lahko traja le nepodpisane celih števil. 255 00:10:31,590 --> 00:10:33,840 Ampak še vedno mislim, da bo trajal? 256 00:10:33,840 --> 00:10:35,652 >> PUBLIKA: Da. 257 00:10:35,652 --> 00:10:37,270 >> SPEAKER: Bo. 258 00:10:37,270 --> 00:10:39,410 To je noro. 259 00:10:39,410 --> 00:10:43,140 In se peljemo v jasno dodeljena celo, da lahko mimo dveh podpisana 260 00:10:43,140 --> 00:10:46,280 število, še vedno deluje. 261 00:10:46,280 --> 00:10:52,150 >> OK, vse ideje, zakaj je še vedno dela, ali kaj se dogaja? 262 00:10:52,150 --> 00:10:53,368 Ja, Jeff. 263 00:10:53,368 --> 00:10:56,296 >> PUBLIKA: ima nekaj opraviti z optimizacijo, ki jih 264 00:10:56,296 --> 00:10:57,760 poudarjeno. 265 00:10:57,760 --> 00:10:58,210 >> SPEAKER: Ne 266 00:10:58,210 --> 00:11:00,570 Mi lahko spremenite optimizacijo, bi še vedno deluje. 267 00:11:00,570 --> 00:11:02,240 To lahko storim za vas, ampak - 268 00:11:02,240 --> 00:11:02,930 >> PUBLIKA: Jaz bom na besedo. 269 00:11:02,930 --> 00:11:03,690 >> SPEAKER: Ja. 270 00:11:03,690 --> 00:11:09,690 Če odprete Makefile tukaj, Spremenil sem optimizacijo. 271 00:11:09,690 --> 00:11:11,570 Tako da lahko narediš pomišljaj nič, zero. 272 00:11:11,570 --> 00:11:12,820 To bo še vedno delovala. 273 00:11:12,820 --> 00:11:16,839 274 00:11:16,839 --> 00:11:20,280 Druge misli? 275 00:11:20,280 --> 00:11:22,600 >> Vi vsi naj bi delovalo, tako Zakaj ste pričakovali, da dela? 276 00:11:22,600 --> 00:11:31,210 277 00:11:31,210 --> 00:11:32,150 Ne? 278 00:11:32,150 --> 00:11:33,660 Tišina. 279 00:11:33,660 --> 00:11:34,910 OK. 280 00:11:34,910 --> 00:11:39,271 281 00:11:39,271 --> 00:11:41,650 Moram počakati sedem sekund, ker sem vprašal. 282 00:11:41,650 --> 00:11:44,190 283 00:11:44,190 --> 00:11:48,660 >> Tako kul stvar C, in ste verjetno doživeli prej - vas 284 00:11:48,660 --> 00:11:50,260 morda ne bi bilo, bi to lahko je prvič. 285 00:11:50,260 --> 00:11:57,030 Ampak kot vsi veste, ko pišem nekaj v C, to ne shrani kot 286 00:11:57,030 --> 00:11:57,760 To na računalniku. 287 00:11:57,760 --> 00:11:59,440 To je shranjena kot tiste in ničel. 288 00:11:59,440 --> 00:12:02,970 To gre z oznako C do zbiranja kodo. 289 00:12:02,970 --> 00:12:09,460 >> Je kdo videl montažo kodo pred, stroj za sestavljanje koda? 290 00:12:09,460 --> 00:12:10,630 Si bomo pogledali v sekundi. 291 00:12:10,630 --> 00:12:12,040 To gre z oznako C do zbiranja kodo. 292 00:12:12,040 --> 00:12:13,755 In veste faze zbiranja. 293 00:12:13,755 --> 00:12:17,410 Si moral zapomniti, da je za kviz eno, potem pa napiši na kvizu nič. 294 00:12:17,410 --> 00:12:18,240 Večina ljudi se zmotili. 295 00:12:18,240 --> 00:12:19,760 Mislim, da vama je pribil. 296 00:12:19,760 --> 00:12:22,880 >> Ampak, vi ste najboljši odsek za kvize, mimogrede. 297 00:12:22,880 --> 00:12:25,210 , Ki je super. 298 00:12:25,210 --> 00:12:25,910 To vas ne bo bolelo. 299 00:12:25,910 --> 00:12:26,900 Ne bodite v skrbeh. 300 00:12:26,900 --> 00:12:28,800 Ampak to je res kul. 301 00:12:28,800 --> 00:12:29,660 Dobro delo. 302 00:12:29,660 --> 00:12:32,870 >> Torej gre v zbirnem jeziku, in potem gre za enic in ničel. 303 00:12:32,870 --> 00:12:35,500 In tisti in ničel se shranijo na računalnik, in to je tisto, shranjene v 304 00:12:35,500 --> 00:12:38,340 a.out, ali v tem primeru izvršljiv pila. 305 00:12:38,340 --> 00:12:41,040 In računalnik zažene tiste in ničel. 306 00:12:41,040 --> 00:12:41,670 Kajne? 307 00:12:41,670 --> 00:12:43,890 To smo že naučili. 308 00:12:43,890 --> 00:12:47,490 >> Tako kul stvar je ta nepodpisani Ideja, zamisel o vrstah Ints nepodpisana, 309 00:12:47,490 --> 00:12:50,490 et cetera, et cetera, da je tu v jeziku C. 310 00:12:50,490 --> 00:12:51,110 Tisti, ki obstajajo. 311 00:12:51,110 --> 00:12:53,770 Ampak tipi ne obstajajo tisti, in ničle. 312 00:12:53,770 --> 00:12:57,110 Tipi sploh ne obstaja zares na Raven zbirni jezik. 313 00:12:57,110 --> 00:13:00,075 Torej, to je nekaj, kar obstaja v C svet, vendar ne obstaja v računalniku 314 00:13:00,075 --> 00:13:01,640 svet ali predelovalec svetu. 315 00:13:01,640 --> 00:13:04,660 To pa je abstrakcija, da C Jezik je vključeno, da bo naša 316 00:13:04,660 --> 00:13:06,240 življenje lažje. 317 00:13:06,240 --> 00:13:09,990 >> Zato ob koncu dneva, znam tukaj veliko različnih stvari, in to 318 00:13:09,990 --> 00:13:10,700 ne bi razliko. 319 00:13:10,700 --> 00:13:12,060 Ker je to le obstaja V svetu C. 320 00:13:12,060 --> 00:13:14,100 To ne obstaja tisti, in ničle svetu. 321 00:13:14,100 --> 00:13:17,310 In naš program je izvrševanje v tisti, in ničle svetu. 322 00:13:17,310 --> 00:13:21,170 Torej, vaš um je očitno še ni pregorela. 323 00:13:21,170 --> 00:13:22,740 Ampak mislim, da je kul. 324 00:13:22,740 --> 00:13:23,530 Ja, Jeff. 325 00:13:23,530 --> 00:13:27,298 >> PUBLIKA: Torej, če bi namesto početje int, ti char. 326 00:13:27,298 --> 00:13:27,770 In ti si bila - 327 00:13:27,770 --> 00:13:29,311 >> SPEAKER: Greva na sekundo. 328 00:13:29,311 --> 00:13:32,583 >> PUBLIKA: Ker potem dobiš nepodpisani gre od negativnega do 128 329 00:13:32,583 --> 00:13:34,720 127 ali 0-255. 330 00:13:34,720 --> 00:13:36,760 >> SPEAKER: Torej znak je problematičen. 331 00:13:36,760 --> 00:13:39,460 Ali kdo ve, zakaj bi bilo char problematično, saj bi in dejansko 332 00:13:39,460 --> 00:13:42,930 spremeniti stvari v tistih in ničlami ​​svet? 333 00:13:42,930 --> 00:13:44,370 >> PUBLIKA: Zaradi velikosti char. 334 00:13:44,370 --> 00:13:46,200 >> SPEAKER: Velikost char je 1. 335 00:13:46,200 --> 00:13:48,260 Torej nepodpisani je tudi 4 bajte. 336 00:13:48,260 --> 00:13:50,080 Tako da bi znak vijak stvari. 337 00:13:50,080 --> 00:13:55,660 Toda kaj je 4 bajte, da je nanaša na char? 338 00:13:55,660 --> 00:13:57,820 Ali pa, da doda eno dodatno - 339 00:13:57,820 --> 00:13:59,760 lahko postavite eno značaja Po char. 340 00:13:59,760 --> 00:14:00,200 >> PUBLIKA: Char zvezda. 341 00:14:00,200 --> 00:14:01,220 >> SPEAKER: Char zvezdicami ima 4 bajte. 342 00:14:01,220 --> 00:14:02,490 Torej dajmo nekaj narediti To je znak zvezda. 343 00:14:02,490 --> 00:14:05,470 344 00:14:05,470 --> 00:14:07,240 >> Torej, bi to verjetno dela, vendar smo naredili še nekaj 345 00:14:07,240 --> 00:14:09,710 bolj noro kot to. 346 00:14:09,710 --> 00:14:10,960 Po mojem mnenju, bolj nor. 347 00:14:10,960 --> 00:14:21,060 348 00:14:21,060 --> 00:14:24,570 >> Jaz sem zdaj napisal funkcijo, ki vrne kazalec, in to traja 349 00:14:24,570 --> 00:14:29,480 kazalec in nepodpisana vrednost - bomo to spremeniti, da int zato nismo 350 00:14:29,480 --> 00:14:31,250 kar preveč sprememb naenkrat. 351 00:14:31,250 --> 00:14:35,370 In to je niz se imenuje, indeksi v matriki in vrne 352 00:14:35,370 --> 00:14:35,850 naslov. 353 00:14:35,850 --> 00:14:37,470 Videli smo te subjekte prej. 354 00:14:37,470 --> 00:14:43,340 To, kaj misliš to se dogaja storiti v zameno, ko sem prost? 355 00:14:43,340 --> 00:14:48,280 356 00:14:48,280 --> 00:14:49,070 Kaj misliš, da se dogaja, da naredim? 357 00:14:49,070 --> 00:14:50,320 Kakršne koli ugibanja? 358 00:14:50,320 --> 00:14:54,220 359 00:14:54,220 --> 00:14:55,320 >> PUBLIKA: Segfault. 360 00:14:55,320 --> 00:14:55,600 >> SPEAKER: Kaj? 361 00:14:55,600 --> 00:14:56,660 Segfault? 362 00:14:56,660 --> 00:14:58,520 To je dobro ugibanje. 363 00:14:58,520 --> 00:14:59,430 Tom pravi isto stvar. 364 00:14:59,430 --> 00:15:02,240 Kakršna koli druga ugibanja? 365 00:15:02,240 --> 00:15:05,260 >> Kdo misli, da se bo narediti isto stvar? 366 00:15:05,260 --> 00:15:06,510 Kdo misli, da se bo segfault? 367 00:15:06,510 --> 00:15:09,350 368 00:15:09,350 --> 00:15:10,230 To počne isto stvar. 369 00:15:10,230 --> 00:15:11,880 Žal mi je. 370 00:15:11,880 --> 00:15:13,860 >> Ampak, seveda, smo se v 1. in 2.. 371 00:15:13,860 --> 00:15:16,470 In tisti, sta oba velja, kajne? 372 00:15:16,470 --> 00:15:19,420 Poglejmo, lahko gremo na Drugo mesto matrike. 373 00:15:19,420 --> 00:15:24,010 Kaj pa če smo b negativno število? 374 00:15:24,010 --> 00:15:26,380 To je verjetno bolje ugibanje Za nekaj segfaulting. 375 00:15:26,380 --> 00:15:30,310 376 00:15:30,310 --> 00:15:32,260 Še vedno deluje. 377 00:15:32,260 --> 00:15:35,020 >> OK, to je zdaj noro. 378 00:15:35,020 --> 00:15:38,350 To je enako veljavne funkcijo SUM. 379 00:15:38,350 --> 00:15:40,470 To počne točno isto stvar kot povratno a in b. 380 00:15:40,470 --> 00:15:44,600 Ali lahko kdo razloži, zakaj je to dobro Skratka funkcijo, ali zakaj to deluje? 381 00:15:44,600 --> 00:15:45,850 Kaj se tu dogaja? 382 00:15:45,850 --> 00:15:49,360 383 00:15:49,360 --> 00:15:55,750 Zakaj to narediti točno isto stvar, kot je naš stari funkcijo SUM? 384 00:15:55,750 --> 00:15:56,890 [? Akshar,?] 385 00:15:56,890 --> 00:15:58,155 kaj se dogaja? 386 00:15:58,155 --> 00:16:01,540 >> PUBLIKA: Ker, če imate To je naslov, 387 00:16:01,540 --> 00:16:03,950 pomnilnik - 388 00:16:03,950 --> 00:16:07,910 in ko boste to storili znak &, da gre za to pomnilniški naslov. 389 00:16:07,910 --> 00:16:13,610 In ko greš na B, si nekako gibljejo korakov od tega pomnilniškega naslova, 390 00:16:13,610 --> 00:16:15,550 ste se vračajo, da. 391 00:16:15,550 --> 00:16:20,083 Torej ste pravzaprav v resnici, Dodajanje in b [neslišno]. 392 00:16:20,083 --> 00:16:23,300 393 00:16:23,300 --> 00:16:26,222 Kje so standardne operacije na ta obračun? 394 00:16:26,222 --> 00:16:27,683 Všeč mi je, kje oklepaji padejo? 395 00:16:27,683 --> 00:16:30,610 Je vrnitev naslova na pred ali po [neslišno]? 396 00:16:30,610 --> 00:16:32,380 >> SPEAKER: To se dogaja, da indeks v b - 397 00:16:32,380 --> 00:16:34,430 ali indeksa v - in potem vrne naslov. 398 00:16:34,430 --> 00:16:38,800 399 00:16:38,800 --> 00:16:41,340 OK, tako da niso vsi razumeli kaj [? Akshar?] 400 00:16:41,340 --> 00:16:45,830 je dejal in pojasnil, zakaj to deluje? 401 00:16:45,830 --> 00:16:49,430 Nisem, najprej, ko kdo je pojasnil, da je to zame. 402 00:16:49,430 --> 00:16:51,900 Bi kdo rad sliko to pojasniti? 403 00:16:51,900 --> 00:16:55,320 Bomo narisati sliko, s Ni označevalcev, to je super. 404 00:16:55,320 --> 00:16:57,920 Našel nekaj. 405 00:16:57,920 --> 00:17:03,390 >> Torej imamo niz, ki je serija polj. 406 00:17:03,390 --> 00:17:07,160 407 00:17:07,160 --> 00:17:13,710 Prvi je indeks 0, indeks 1, 2, 3, 4, pika, pika, pika. 408 00:17:13,710 --> 00:17:15,609 Tipičen matrika. 409 00:17:15,609 --> 00:17:19,540 In poleg tega, da imajo indekse, vsi imajo pomnilniške naslove. 410 00:17:19,540 --> 00:17:30,190 Torej, dajmo ta pomnilniški naslov 13, 14, 15, 16, 17, in tako naprej. 411 00:17:30,190 --> 00:17:32,490 Vsi so tu doslej. 412 00:17:32,490 --> 00:17:35,810 >> Torej je naslov. 413 00:17:35,810 --> 00:17:38,850 Ime array, kazalec se tam shrani. 414 00:17:38,850 --> 00:17:42,730 To je kazalec, da je pomnilnik, na začetku matrike. 415 00:17:42,730 --> 00:17:45,910 Torej, če bi bila ta matrika, bi bila vrednost 13. 416 00:17:45,910 --> 00:17:49,110 In, seveda, lahko damo katera koli vrednost želimo. 417 00:17:49,110 --> 00:17:52,450 Char zvezda, lahko damo koli pomnilniški naslov želimo. 418 00:17:52,450 --> 00:17:55,940 Mi lahko dajo 0, lahko smo ji dati negativna 1 - negativna 1 ne obstaja, 419 00:17:55,940 --> 00:17:58,820 , tako da je verjetno problematična, vendar ste videli, da je še vedno delal. 420 00:17:58,820 --> 00:18:03,070 Torej lahko damo poljubno število želimo, koli pomnilniški naslov želimo. 421 00:18:03,070 --> 00:18:08,720 >> Potem, int b pravi, OK, grem v to številko od korakov v array. 422 00:18:08,720 --> 00:18:13,150 Torej, če je b enak 2, in je enaka 13, smo na pomnilniški naslov 13. 423 00:18:13,150 --> 00:18:17,330 In gremo dva koraka v, in zato smo tukaj. 424 00:18:17,330 --> 00:18:21,150 In ampersand pomeni vrnitev naslov tej lokaciji. 425 00:18:21,150 --> 00:18:23,990 In naslov, seveda, 15. 426 00:18:23,990 --> 00:18:28,710 Tako smo dobili 13 plus 2, ali plus b, ki je 15. 427 00:18:28,710 --> 00:18:29,590 >> Vprašanje je, čeprav - 428 00:18:29,590 --> 00:18:30,250 Žal mi je. 429 00:18:30,250 --> 00:18:34,324 Ali to razjasniti stvari , zakaj to deluje? 430 00:18:34,324 --> 00:18:36,300 >> PUBLIKA: Zakaj bi to delo bo - 431 00:18:36,300 --> 00:18:38,770 tako da lahko imajo celo paleto in pojdi na negativno indeks? 432 00:18:38,770 --> 00:18:39,050 >> SPEAKER: Right. 433 00:18:39,050 --> 00:18:40,870 Tako smo naredili negativne številke, tako, da je - 434 00:18:40,870 --> 00:18:42,770 Ali je to smiselno, čeprav, Prvič, [? Avi,?] 435 00:18:42,770 --> 00:18:43,120 za vas? 436 00:18:43,120 --> 00:18:48,840 >> OBČINSTVO: Ja, jaz sem samo [Neslišno], ampak - 437 00:18:48,840 --> 00:18:50,440 >> Govoril je: Ja, to bi vrnili 15. 438 00:18:50,440 --> 00:18:53,523 Če je 13, in b je 2, to bi vrnili 15. 439 00:18:53,523 --> 00:18:58,160 >> PUBLIKA: Torej nič, indeksiranje ne postane problem, kajne? 440 00:18:58,160 --> 00:19:00,160 Ker ste se gibljejo od 0. 441 00:19:00,160 --> 00:19:00,470 >> SPEAKER: Right. 442 00:19:00,470 --> 00:19:05,000 Torej ste se gibljejo - tako da, če b bilo 0, si ne bi premakniti nikamor. 443 00:19:05,000 --> 00:19:06,330 In ti bi se pravkar vrnili naslov - 444 00:19:06,330 --> 00:19:10,830 če b 0, to je v bistvu vrnitvijo, da se naslov. 445 00:19:10,830 --> 00:19:13,960 , Ki poteka v znakovnem STAR in vračanje naslov je le vrača, 446 00:19:13,960 --> 00:19:15,860 v bistvu. 447 00:19:15,860 --> 00:19:18,280 >> V redu, vprašanje je, zakaj negativne številke delo? 448 00:19:18,280 --> 00:19:21,670 In to je res kul stvar tega, ker bi to moralo segfault. 449 00:19:21,670 --> 00:19:25,110 In da bi bilo segfault če bomo storil kaj takega. 450 00:19:25,110 --> 00:19:28,050 451 00:19:28,050 --> 00:19:29,300 Recimo, int. 452 00:19:29,300 --> 00:19:34,390 453 00:19:34,390 --> 00:19:39,810 Torej ta koda videti enaki in bi morali obnašati enako. 454 00:19:39,810 --> 00:19:44,550 V bistvu, x je smeti spremenljivka, in zato je treba to obnašajo enako. 455 00:19:44,550 --> 00:19:46,370 >> Naj bo tega - 456 00:19:46,370 --> 00:19:47,620 oops - 457 00:19:47,620 --> 00:19:54,790 458 00:19:54,790 --> 00:19:56,040 v zvezde. 459 00:19:56,040 --> 00:19:59,160 460 00:19:59,160 --> 00:20:02,733 OK, smo že dobili napak tukaj, saj je že bo jezen 461 00:20:02,733 --> 00:20:04,610 vame, saj je že ve, kaj prihaja. 462 00:20:04,610 --> 00:20:07,060 Zlasti druga. 463 00:20:07,060 --> 00:20:09,800 Naslov zloženega spomina povezana z lokalno spremenljivko. 464 00:20:09,800 --> 00:20:14,220 >> V bistvu, ne bom, da pripravijo to, in potem bom naredil, da razveljavite 465 00:20:14,220 --> 00:20:14,920 kar smo pravkar storil. 466 00:20:14,920 --> 00:20:19,130 Ampak zato, ker nismo nikoli dejansko dostop, kar je na spomin 467 00:20:19,130 --> 00:20:21,930 mesto, da ne bo segfault. 468 00:20:21,930 --> 00:20:26,450 Mi nikoli dejansko gledaš, kaj je v drugo polje ali kaj je v vsakem oknu 469 00:20:26,450 --> 00:20:28,340 v tem polju. 470 00:20:28,340 --> 00:20:30,980 Mi smo samo pravim, tukaj je naslov za stvar, ki jo iščete in 471 00:20:30,980 --> 00:20:32,410 vrniti ta naslov. 472 00:20:32,410 --> 00:20:35,700 Ne bomo nikoli dejansko dogaja v Niz pogled na tem mestu. 473 00:20:35,700 --> 00:20:39,140 In ker nikoli ne dotikajte spomin, ne bomo v težavah. 474 00:20:39,140 --> 00:20:40,760 Ne bomo dobili segfault. 475 00:20:40,760 --> 00:20:46,225 >> Če bi poskušali znova, se dotaknite, da spomin, dotik, kar je bilo na a ali b - 476 00:20:46,225 --> 00:20:49,940 ali nosilec b, in ob predpostavki je 0 in - 477 00:20:49,940 --> 00:20:53,040 če je 0, čeprav, to bi bilo lepo slabo, ker ne moremo iti 478 00:20:53,040 --> 00:20:54,090 navzdol vse poti tja. 479 00:20:54,090 --> 00:20:58,250 Če so A in B oba 0, in smo skušali dotakniti, kaj je bilo tam, potem bi 480 00:20:58,250 --> 00:20:59,110 zaideš v težave. 481 00:20:59,110 --> 00:21:02,160 Ampak, če se ne dotikajte, kaj je tam, smo samo vrnitev naslov, je 482 00:21:02,160 --> 00:21:08,300 dejansko ne bo segfault, ker vam omogoča, da opravljanje teh dejavnosti. 483 00:21:08,300 --> 00:21:11,920 To postane šele jezna nate, in dobi super jezen, ko poskusite in se dotaknite 484 00:21:11,920 --> 00:21:15,740 dejanska spomin in vrne tisto, kar je na tega pomnilnika. 485 00:21:15,740 --> 00:21:17,690 >> Ali to smiselno? 486 00:21:17,690 --> 00:21:24,820 To je samo nor del C. Torej, imamo še enega. 487 00:21:24,820 --> 00:21:27,760 488 00:21:27,760 --> 00:21:29,700 >> Kdo misli, da je to kul? 489 00:21:29,700 --> 00:21:30,280 Več ljudi. 490 00:21:30,280 --> 00:21:31,070 To je dobro. 491 00:21:31,070 --> 00:21:34,860 OK, to je naša zadnja. 492 00:21:34,860 --> 00:21:37,314 In rad bi, da mi poveste, ali ali ne mislite, da se bo 493 00:21:37,314 --> 00:21:38,564 narediti točno isto stvar. 494 00:21:38,564 --> 00:22:06,050 495 00:22:06,050 --> 00:22:07,390 >> Sem ti napisal nekje. 496 00:22:07,390 --> 00:22:08,640 Ne bom jih zapomniti. 497 00:22:08,640 --> 00:22:33,350 498 00:22:33,350 --> 00:22:42,900 >> Poglejmo, 8, b 4, 4, 2, 4, 0, 8, 0, 3, 4, 4, 2, 4, 0, 4. 499 00:22:42,900 --> 00:22:46,670 Torej je to matrika, zdaj, ni funkcija. 500 00:22:46,670 --> 00:22:49,640 In to je niz, saj imamo square nosilci, ne zaviti oklepaji. 501 00:22:49,640 --> 00:22:52,360 In to je niz kakšne vrste? 502 00:22:52,360 --> 00:22:55,540 503 00:22:55,540 --> 00:22:56,862 Vsakdo, hmm? 504 00:22:56,862 --> 00:22:57,694 >> PUBLIKA: Njihovi šestnajstiških številk? 505 00:22:57,694 --> 00:22:59,650 >> SPEAKER: Toda kaj je tip C? 506 00:22:59,650 --> 00:23:00,710 Vsi imajo šestnajstiških številk. 507 00:23:00,710 --> 00:23:01,960 Kaj je tip C? 508 00:23:01,960 --> 00:23:04,730 509 00:23:04,730 --> 00:23:05,480 To vam pove. 510 00:23:05,480 --> 00:23:07,350 >> PUBLIKA: To je nepodpisani znakov. 511 00:23:07,350 --> 00:23:09,170 >> SPEAKER: Pravica, nepodpisani znakov. 512 00:23:09,170 --> 00:23:13,050 In dva šestnajstiških številk je eden bajt. 513 00:23:13,050 --> 00:23:18,540 To so 1, 2, 3, 4, 5, 6, 7, 8, 9 zlogov. 514 00:23:18,540 --> 00:23:21,360 To je niz 9 bajtov. 515 00:23:21,360 --> 00:23:25,530 >> OK, ste verjetno že veste, Odgovor na to vprašanje. 516 00:23:25,530 --> 00:23:29,840 Ampak, kaj misliš, da bo zgodilo, ko sem teči to? 517 00:23:29,840 --> 00:23:34,110 Ponavljam, v mysum.c, Jaz sem pričakoval funkcijo 518 00:23:34,110 --> 00:23:36,280 ki traja dve celi števili. 519 00:23:36,280 --> 00:23:40,265 In jaz pravim, namesto te vsote je niz znakov. 520 00:23:40,265 --> 00:23:42,780 521 00:23:42,780 --> 00:23:48,070 Kaj se bo zgodilo, ko Vodim. / Mysum in da? 522 00:23:48,070 --> 00:23:53,230 >> No, najprej, večina vas bo verjetno se strinjajo, da make - oh ne, samo hecam se. 523 00:23:53,230 --> 00:23:54,746 Kaj sem naredila narobe? 524 00:23:54,746 --> 00:23:55,996 Uh oh. 525 00:23:55,996 --> 00:23:59,220 526 00:23:59,220 --> 00:24:01,160 To bi moralo biti zaviti oklepaji. 527 00:24:01,160 --> 00:24:02,790 Tako si inicializacijo niz. 528 00:24:02,790 --> 00:24:04,040 Moja napaka. 529 00:24:04,040 --> 00:24:07,530 530 00:24:07,530 --> 00:24:11,670 >> Tako smo že videli pred tem vrstam so abstrakcija-C ravni, ne 531 00:24:11,670 --> 00:24:12,610 abstrakcija ravni računalnik. 532 00:24:12,610 --> 00:24:16,360 Tako da je večina od vas verjetno pričakuje, da da, ali ob predpostavki, da bi bilo. 533 00:24:16,360 --> 00:24:18,680 Toda kaj, ko sem prost. / Mysum? 534 00:24:18,680 --> 00:24:19,930 Kaj se bo zgodilo? 535 00:24:19,930 --> 00:24:21,790 536 00:24:21,790 --> 00:24:23,422 Kakršne koli ugibanja? 537 00:24:23,422 --> 00:24:25,270 >> PUBLIKA: To se dogaja, izpisal besedo. 538 00:24:25,270 --> 00:24:26,310 >> SPEAKER: To se dogaja, izpisal besedo. 539 00:24:26,310 --> 00:24:29,335 Kaj novega? 540 00:24:29,335 --> 00:24:32,200 >> PUBLIKA: [neslišno]. 541 00:24:32,200 --> 00:24:33,240 >> SPEAKER: Vse druge ugibanja? 542 00:24:33,240 --> 00:24:34,000 OK, izpisal stavek. 543 00:24:34,000 --> 00:24:35,130 Lahko imaš vse fraze. 544 00:24:35,130 --> 00:24:36,240 Da bo tvoja stran. 545 00:24:36,240 --> 00:24:38,480 Vsakdo, ki ima drugačno ugibati? 546 00:24:38,480 --> 00:24:39,730 Anna, kaj je tvoja domneva? 547 00:24:39,730 --> 00:24:42,675 548 00:24:42,675 --> 00:24:44,615 >> PUBLIKA: Vse bo izpisal - 549 00:24:44,615 --> 00:24:47,525 550 00:24:47,525 --> 00:24:49,480 dve črki, ali [neslišno] ena črka. 551 00:24:49,480 --> 00:24:51,460 >> SPEAKER: Ena črka. 552 00:24:51,460 --> 00:24:53,260 >> PUBLIKA: Lahko računam, kako veliko [neslišno]? 553 00:24:53,260 --> 00:24:55,426 >> SPEAKER: Nine. 554 00:24:55,426 --> 00:24:56,640 No, jaz grem, da ga vodijo. 555 00:24:56,640 --> 00:24:58,650 To počne točno isto stvar. 556 00:24:58,650 --> 00:25:00,190 Dodaja dve številki skupaj. 557 00:25:00,190 --> 00:25:02,740 No, pa mimo dva argumenta. 558 00:25:02,740 --> 00:25:03,710 To ne sprejme argumente. 559 00:25:03,710 --> 00:25:06,080 Tako da ne vem, če bi lahko morda dobil te argumente. 560 00:25:06,080 --> 00:25:07,710 Vendar naj preide na 100 in 0. 561 00:25:07,710 --> 00:25:09,200 In dodaja, 100 in 0. 562 00:25:09,200 --> 00:25:10,220 To je noro. 563 00:25:10,220 --> 00:25:12,280 Mislim, da ja. 564 00:25:12,280 --> 00:25:14,480 >> Negativno 4, ki deluje preveč. 565 00:25:14,480 --> 00:25:15,650 To lahko storite vse, kar hočeš. 566 00:25:15,650 --> 00:25:17,920 To je enako veljavna funkcija vsote. 567 00:25:17,920 --> 00:25:19,640 To je funkcija vsote. 568 00:25:19,640 --> 00:25:21,510 Ampak, ne, ti si rekel, da je niz bajtov. 569 00:25:21,510 --> 00:25:23,570 Torej, kaj se dogaja? 570 00:25:23,570 --> 00:25:27,240 >> Torej, še enkrat, gremo nazaj na to idejo da smo povedali že na samem začetku. 571 00:25:27,240 --> 00:25:32,050 Greš z oznako ravni C, za montažo jezik, za tiste in ničel. 572 00:25:32,050 --> 00:25:33,050 To je šestnajstiški. 573 00:25:33,050 --> 00:25:35,780 Ampak to je res samo Veliko enic in ničel. 574 00:25:35,780 --> 00:25:39,230 To je tisti 72 in ničle, kajne? 575 00:25:39,230 --> 00:25:40,550 72 tisti, in ničle. 576 00:25:40,550 --> 00:25:42,160 9 bajtov. 577 00:25:42,160 --> 00:25:43,740 Vsak bajt je 8 bitov. 578 00:25:43,740 --> 00:25:44,760 Vsak bit je eno ali nič. 579 00:25:44,760 --> 00:25:45,920 Torej 72 onov ali ničle. 580 00:25:45,920 --> 00:25:48,780 Jaz sem jih pravkar napisal takole - ne pa s pisanjem kot veliko 581 00:25:48,780 --> 00:25:49,730 tisti, in ničle. 582 00:25:49,730 --> 00:25:53,560 >> Ampak to bo šel od ravni C jezik, za montažo 583 00:25:53,560 --> 00:25:54,620 jezik, kodi. 584 00:25:54,620 --> 00:25:59,020 In to se bo izpisal v kodi, Nekje ti tisti 72 in ničle 585 00:25:59,020 --> 00:26:00,910 da sem tukaj napisal. 586 00:26:00,910 --> 00:26:03,610 Torej nekje v tem, da - 587 00:26:03,610 --> 00:26:04,850 gremo tukaj - 588 00:26:04,850 --> 00:26:11,240 nekje v mysum, program pa so ti tisti, 72. in ničle, ki sem jih 589 00:26:11,240 --> 00:26:14,930 pisni in povedal, da pisati. 590 00:26:14,930 --> 00:26:19,331 >> Zdaj, vsa ugibanja, za kaj tiste 72 tisti, in ničle pomeni? 591 00:26:19,331 --> 00:26:21,240 >> PUBLIKA: Verjetno isto stvar kot vrnitev plus b. 592 00:26:21,240 --> 00:26:22,890 >> SPEAKER: Verjetno isto stvar kot vrnitev plus b. 593 00:26:22,890 --> 00:26:23,730 Dajmo preveriti,. 594 00:26:23,730 --> 00:26:25,210 Dajmo ugotoviti, kako sem to naredil. 595 00:26:25,210 --> 00:26:31,840 >> Torej, če greš nazaj, povem vam: teči ta ukaz, objdump-S 596 00:26:31,840 --> 00:26:34,290 sumfunction.o. 597 00:26:34,290 --> 00:26:36,230 Pojdimo ga zaženite. objdump - 598 00:26:36,230 --> 00:26:37,990 obj, smetišče. 599 00:26:37,990 --> 00:26:39,840 V bistvu mi je lahko dal kar hočem videti. 600 00:26:39,840 --> 00:26:40,840 To mi lahko pove zbirni jezik. 601 00:26:40,840 --> 00:26:42,730 To mi lahko dal tiste in ničel. 602 00:26:42,730 --> 00:26:43,840 To ima tono zastav. 603 00:26:43,840 --> 00:26:45,860 To je ena greva uporabiti za zdaj. 604 00:26:45,860 --> 00:26:46,980 Dot - 605 00:26:46,980 --> 00:26:48,810 kot vidite v diapozitivih - 606 00:26:48,810 --> 00:26:53,840 dash kapital S pravi, Razasuti, Izvorna koda - 607 00:26:53,840 --> 00:26:58,410 ta vrstica je iz C - z montažo kodo in s tistimi in ničel. 608 00:26:58,410 --> 00:27:00,350 In bomo teči je na sumfunction.o. 609 00:27:00,350 --> 00:27:01,410 Saj nam bo lažje videti. 610 00:27:01,410 --> 00:27:02,670 Again - hmm? 611 00:27:02,670 --> 00:27:04,700 >> PUBLIKA: pira si ga narobe. 612 00:27:04,700 --> 00:27:05,930 >> SPEAKER: Ampak jaz dejansko dogaja da je jasno za sekundo. 613 00:27:05,930 --> 00:27:09,160 Jaz sem prvič dogaja, da se odpre Samo sumfuntion.o. 614 00:27:09,160 --> 00:27:11,170 >> PUBLIKA: to ste pira Napačna prvič. 615 00:27:11,170 --> 00:27:12,420 >> SPEAKER: Classic. 616 00:27:12,420 --> 00:27:14,790 617 00:27:14,790 --> 00:27:15,480 Sum - 618 00:27:15,480 --> 00:27:16,680 da je težko besedo, čeprav. 619 00:27:16,680 --> 00:27:19,050 Ti bi bil presenečen. 620 00:27:19,050 --> 00:27:21,560 OK, tako da je to sumfunction.o. 621 00:27:21,560 --> 00:27:24,494 622 00:27:24,494 --> 00:27:26,220 Jaz tudi ne bi mogel povedati. 623 00:27:26,220 --> 00:27:30,250 Obstaja veliko ničel, očitno veliko ničel, in tam je nekaj drugega 624 00:27:30,250 --> 00:27:31,930 stvari, ki je ne ničle. 625 00:27:31,930 --> 00:27:33,220 Ampak predvsem ničle. 626 00:27:33,220 --> 00:27:35,120 Videti je, da so nekateri naši. 627 00:27:35,120 --> 00:27:36,810 Torej je jasno, da je to težko brati. 628 00:27:36,810 --> 00:27:39,320 To je binarni jezik. 629 00:27:39,320 --> 00:27:40,710 >> Dajva zdaj odpreti - 630 00:27:40,710 --> 00:27:50,190 631 00:27:50,190 --> 00:27:52,350 kaj? 632 00:27:52,350 --> 00:27:53,600 Kaj delam narobe? 633 00:27:53,600 --> 00:27:56,955 634 00:27:56,955 --> 00:27:58,434 Sem črkovati pravilno? 635 00:27:58,434 --> 00:28:09,865 636 00:28:09,865 --> 00:28:11,120 OK, to je čudno. 637 00:28:11,120 --> 00:28:37,560 638 00:28:37,560 --> 00:28:40,158 Rabim eno sekundo, da ugotovimo kaj delam narobe. 639 00:28:40,158 --> 00:28:46,030 640 00:28:46,030 --> 00:28:49,310 To je ena napaka. 641 00:28:49,310 --> 00:28:50,560 To je čudno. 642 00:28:50,560 --> 00:28:58,080 643 00:28:58,080 --> 00:29:01,800 Oh, to je, zakaj. 644 00:29:01,800 --> 00:29:09,880 >> Jaz grem nazaj na našo začetno ena, tako da bomo lahko ogledate na 645 00:29:09,880 --> 00:29:10,560 Predmet koda za to. 646 00:29:10,560 --> 00:29:13,390 Zato, ker se v resnici ne dogaja, da karkoli, ko smo pravkar dal 647 00:29:13,390 --> 00:29:14,640 tisti, in ničle palcev 648 00:29:14,640 --> 00:29:29,000 649 00:29:29,000 --> 00:29:30,200 Takole. 650 00:29:30,200 --> 00:29:32,425 OK, tako da lahko vsi videli. 651 00:29:32,425 --> 00:29:38,130 Ta funkcija, kot sem rekel, odpravlja vrstice C - 652 00:29:38,130 --> 00:29:39,060 koda linije virov - 653 00:29:39,060 --> 00:29:41,000 z nekaterimi navodili za montažo. 654 00:29:41,000 --> 00:29:42,760 >> Tu je naša izvorna koda linijo. 655 00:29:42,760 --> 00:29:44,910 Tukaj je ena, tukaj je še en. 656 00:29:44,910 --> 00:29:46,540 Tukaj je montaže navodila. 657 00:29:46,540 --> 00:29:47,820 To je tisto, kar si želijo. 658 00:29:47,820 --> 00:29:49,010 Navodila za montažo - 659 00:29:49,010 --> 00:29:51,530 boste lahko izvedeli več o njih, če jemljete drugi razredi CS, ampak oni 660 00:29:51,530 --> 00:29:53,500 splošno navodilo. 661 00:29:53,500 --> 00:29:57,940 In potem vir in destinacijo. 662 00:29:57,940 --> 00:30:02,740 >> In potem tukaj je binarno kodo ki ustreza tej montažo 663 00:30:02,740 --> 00:30:04,940 navodila. 664 00:30:04,940 --> 00:30:09,760 Torej, kot lahko vidite, to funkcijo vsota, Na koncu dneva, je tri 665 00:30:09,760 --> 00:30:10,950 navodila za montažo. 666 00:30:10,950 --> 00:30:12,870 Samo tri. 667 00:30:12,870 --> 00:30:14,180 Ena mov - 668 00:30:14,180 --> 00:30:16,740 ta m-o-proti stoji za mobilnost. 669 00:30:16,740 --> 00:30:17,780 Dodaj stojala za Add. 670 00:30:17,780 --> 00:30:20,440 In r-e-t stoji za vračanje. 671 00:30:20,440 --> 00:30:22,540 Torej ena mov, ena dodatek, ena povratna. 672 00:30:22,540 --> 00:30:27,970 In to, tukaj, so ničle in Tiste, ki ustrezajo tem zakoniku. 673 00:30:27,970 --> 00:30:31,100 >> Torej ti ničel in enic, če ste veš, tiste, lahko daš 674 00:30:31,100 --> 00:30:32,140 tistih, ki naravnost noter 675 00:30:32,140 --> 00:30:34,130 In potem bom to naredil Enako natančna stvar. 676 00:30:34,130 --> 00:30:37,260 Ker na koncu dneva, vse ste izvršitve dolg niz 677 00:30:37,260 --> 00:30:38,480 ničel in enic. 678 00:30:38,480 --> 00:30:40,700 In to je tisto kodo je res. 679 00:30:40,700 --> 00:30:41,770 >> In razlog - 680 00:30:41,770 --> 00:30:43,680 Oglejmo si eno stvar. 681 00:30:43,680 --> 00:30:45,440 Ali imam Makefile odprta? 682 00:30:45,440 --> 00:30:48,510 Torej, če smo šli nazaj v dash nič, nič tu gor - 683 00:30:48,510 --> 00:30:52,220 684 00:30:52,220 --> 00:30:57,300 Žal mi je, kapital o, kapital O nič, nič, nič. 685 00:30:57,300 --> 00:31:01,810 In sva storila, bi bilo še vedno dela enako. 686 00:31:01,810 --> 00:31:05,420 Ampak zdaj ste opazili, da obstaja veliko več navodila za montažo. 687 00:31:05,420 --> 00:31:09,090 To je zato, ker, še enkrat, sem vprašal prevajalnik ne naredi nobene optimizacije. 688 00:31:09,090 --> 00:31:12,800 >> Tako da sem lahko še vedno traja vse te ničel in enic, in jih vrgel, 689 00:31:12,800 --> 00:31:13,390 in da bi delovalo. 690 00:31:13,390 --> 00:31:15,850 Pravkar sem se optimizacije, saj to je malo lažje, potem, 691 00:31:15,850 --> 00:31:17,310 napisati to vrsto. 692 00:31:17,310 --> 00:31:19,730 Vendar bi to delo prav tako dobro. 693 00:31:19,730 --> 00:31:24,460 >> OK, bomo storili še zadnjo stvar, ker mislim, da je kul del. 694 00:31:24,460 --> 00:31:27,410 Čeprav so vsi jasno že pregorela in brez besed. 695 00:31:27,410 --> 00:31:30,520 696 00:31:30,520 --> 00:31:31,670 Naše misli so prave. 697 00:31:31,670 --> 00:31:32,920 [Neslišno] 698 00:31:32,920 --> 00:31:47,580 699 00:31:47,580 --> 00:31:51,520 >> Torej, to so iz različnih CS razred kar je zelo zanimivo, 700 00:31:51,520 --> 00:31:52,970 , da sem - 701 00:31:52,970 --> 00:31:54,140 CS61. 702 00:31:54,140 --> 00:31:55,910 Zelo sem vam svetujemo, da ga vzamete. 703 00:31:55,910 --> 00:31:58,990 Ampak kul del o tem dejstvu, da Stvari so le ničel in enic, 704 00:31:58,990 --> 00:32:01,270 so, da je vse ničel in enic. 705 00:32:01,270 --> 00:32:05,330 >> Tako da si lahko datoteko, ki ima pravilni ničle in tiste, ki jih želite 706 00:32:05,330 --> 00:32:10,390 nekje v njej, in uporabite tistega dela ničel in enic v odvisnosti kilometrov. 707 00:32:10,390 --> 00:32:11,480 >> Kaj mislim s tem? 708 00:32:11,480 --> 00:32:15,755 Mislim si lahko slikovno datoteko, ki ima pravilno serijo ničel in 709 00:32:15,755 --> 00:32:17,120 tisti, ki tiskajo nekaj ven na sliko. 710 00:32:17,120 --> 00:32:20,070 In en program lahko razlagajo je slike, lahko pa ga razlagajo, če 711 00:32:20,070 --> 00:32:22,040 hočeš, kot funkcijo vsote. 712 00:32:22,040 --> 00:32:27,010 >> Torej, če smo želeli odpreti, za Na primer, ta podoba. 713 00:32:27,010 --> 00:32:37,440 Pojdimo, Hello Kitty. 714 00:32:37,440 --> 00:32:38,810 Čudovito malo sliko. 715 00:32:38,810 --> 00:32:42,260 In tukaj je, da niz ničel in enic. 716 00:32:42,260 --> 00:32:45,500 Ti 72 ničel in enic obstaja v tej podobi. 717 00:32:45,500 --> 00:32:47,695 >> Torej, kaj lahko storim, potem je pisati - 718 00:32:47,695 --> 00:32:50,510 719 00:32:50,510 --> 00:32:51,760 Moram se spomniti, kje so. 720 00:32:51,760 --> 00:32:54,550 721 00:32:54,550 --> 00:32:55,720 Bom ugotovili, da v sekundi. 722 00:32:55,720 --> 00:32:57,840 Ampak delamo - 723 00:32:57,840 --> 00:32:59,440 Naj izvedeti, kje so. 724 00:32:59,440 --> 00:33:00,020 Samo trenutek. 725 00:33:00,020 --> 00:33:01,270 Naredimo - 726 00:33:01,270 --> 00:33:05,800 727 00:33:05,800 --> 00:33:07,240 >> PUBLIKA: [neslišno]. 728 00:33:07,240 --> 00:33:08,490 >> SPEAKER: Hvala. 729 00:33:08,490 --> 00:33:24,240 730 00:33:24,240 --> 00:33:28,740 Torej, če smo izvedbo tega programa, ki namesto da prebere datoteko, potem gre 731 00:33:28,740 --> 00:33:33,160 tem indeksu v datoteki. 732 00:33:33,160 --> 00:33:35,500 In potem spet, tako kot mysum, traja dve številki. 733 00:33:35,500 --> 00:33:41,410 Mi lahko dodate številke popolnoma enake kot smo počeli prej, kar gre 734 00:33:41,410 --> 00:33:44,850 vam pokaže, kako to, da je na koncu dneva, so vse te stvari 735 00:33:44,850 --> 00:33:45,350 ničel in enic. 736 00:33:45,350 --> 00:33:48,170 In to je samo, kako se odločite za njihovo interpretacijo. 737 00:33:48,170 --> 00:33:50,770 >> In če ste dejansko videti na tej sliki - 738 00:33:50,770 --> 00:33:52,930 dajmo povečati bit. 739 00:33:52,930 --> 00:33:53,720 Ga lahko vsi videli? 740 00:33:53,720 --> 00:33:57,570 Opazili boste, prav tu, tam nek čuden packa. 741 00:33:57,570 --> 00:34:00,130 742 00:34:00,130 --> 00:34:02,290 Pojdimo - to je izvirna slika. 743 00:34:02,290 --> 00:34:04,540 Opazili boste, tu ni packa. 744 00:34:04,540 --> 00:34:08,420 To je koda za funkcijo vsote, je, da malo packa tam. 745 00:34:08,420 --> 00:34:13,449 >> In dejansko, še enkrat, če želite izvedeti več o tem, boste spoznali, da je to 746 00:34:13,449 --> 00:34:18,270 Hello Kitty, ki je celo večji packa, ima kodo, ki lahko prevzame 747 00:34:18,270 --> 00:34:21,800 računalnik, če to ni zaščiten ustrezno. 748 00:34:21,800 --> 00:34:23,920 Tako da lahko dejansko vodijo to. 749 00:34:23,920 --> 00:34:25,380 Ne grem, da ga vodijo prav zdaj. 750 00:34:25,380 --> 00:34:30,600 Vendar lahko zaženete ta Hello Kitty slika, in ga lahko 751 00:34:30,600 --> 00:34:32,429 prevzame računalniku. 752 00:34:32,429 --> 00:34:35,159 >> Tako, da je vse za demo. 753 00:34:35,159 --> 00:34:38,560 Ima kdo kakšno vprašanje, pripombe, pomisleke? 754 00:34:38,560 --> 00:34:39,515 Mislim, da ta stvar je zanimiva. 755 00:34:39,515 --> 00:34:41,500 To me je navdušilo, da izveste več. 756 00:34:41,500 --> 00:34:44,980 Priporočam, če vas zanima sploh na CS, govori z mano. 757 00:34:44,980 --> 00:34:50,250 Čeprav sem družboslovje Koncentrator, sem CS, sekundarne, tako 758 00:34:50,250 --> 00:34:52,340 Še vedno vem, malo. 759 00:34:52,340 --> 00:34:53,810 Ampak jaz zagotovo vedeli, kaj razredi, morate sprejeti. 760 00:34:53,810 --> 00:34:57,940 Mislim, da je vse res zanimivo, in vas pozivam, gotovo, da 761 00:34:57,940 --> 00:35:00,330 izvedeti več, če ste zainteresirani. 762 00:35:00,330 --> 00:35:02,090 >> OK, imam še zadnjo stvar. 763 00:35:02,090 --> 00:35:05,530 764 00:35:05,530 --> 00:35:05,870 Žal mi je. 765 00:35:05,870 --> 00:35:06,460 Vsa vprašanja? 766 00:35:06,460 --> 00:35:10,010 Nisem premor čakati, če kdo imeli kakršna koli vprašanja o tem. 767 00:35:10,010 --> 00:35:13,220 768 00:35:13,220 --> 00:35:16,900 >> Je kdo bo CS Concentrator? 769 00:35:16,900 --> 00:35:18,580 Ali razmišljate o tem? 770 00:35:18,580 --> 00:35:20,730 Ena, dva, tri, štiri. 771 00:35:20,730 --> 00:35:21,620 Eden - edini. 772 00:35:21,620 --> 00:35:24,680 Anna se je le roko, ki je postavljeno avtoritativno. 773 00:35:24,680 --> 00:35:27,640 774 00:35:27,640 --> 00:35:29,390 OK, to je kul. 775 00:35:29,390 --> 00:35:30,110 Assam, kaj boš naredil? 776 00:35:30,110 --> 00:35:33,220 >> PUBLIKA: [neslišno]. 777 00:35:33,220 --> 00:35:33,910 >> SPEAKER: Constantine? 778 00:35:33,910 --> 00:35:34,990 >> PUBLIKA: Fizika. 779 00:35:34,990 --> 00:35:36,720 >> SPEAKER: Vau, to je bilo pa hitro. 780 00:35:36,720 --> 00:35:40,770 Ste imeli slabe izkušnje v CS50? 781 00:35:40,770 --> 00:35:42,015 [Neslišno], kaj boš naredil? 782 00:35:42,015 --> 00:35:42,980 >> PUBLIKA: Nimam pojma. 783 00:35:42,980 --> 00:35:43,924 >> SPEAKER: Curt? 784 00:35:43,924 --> 00:35:45,900 >> PUBLIKA: Econ ali CS. 785 00:35:45,900 --> 00:35:46,910 >> SPEAKER: Econ ali CS. 786 00:35:46,910 --> 00:35:47,840 Tom? 787 00:35:47,840 --> 00:35:48,385 >> PUBLIKA: delam Stat. 788 00:35:48,385 --> 00:35:48,950 >> SPEAKER: Stat? 789 00:35:48,950 --> 00:35:50,100 OK. 790 00:35:50,100 --> 00:35:51,000 Kaj ste vi? 791 00:35:51,000 --> 00:35:51,310 >> PUBLIKA: Me? 792 00:35:51,310 --> 00:35:51,750 >> SPEAKER: Ja. 793 00:35:51,750 --> 00:35:52,190 >> PUBLIKA: Stat. 794 00:35:52,190 --> 00:35:52,520 >> SPEAKER: Stat. 795 00:35:52,520 --> 00:35:53,500 Oh, tukaj imaš. 796 00:35:53,500 --> 00:35:55,200 Tom, se posvetujte z Alden. 797 00:35:55,200 --> 00:35:56,932 Emily, kaj si ti? 798 00:35:56,932 --> 00:35:57,396 >> PUBLIKA: Biomedicinska - 799 00:35:57,396 --> 00:36:00,178 >> Govoril je: Ali ste v tem delu? 800 00:36:00,178 --> 00:36:03,040 >> PUBLIKA: Ne 801 00:36:03,040 --> 00:36:04,530 >> SPEAKER: OK, to je Emily. 802 00:36:04,530 --> 00:36:05,670 Ona je moja prijateljica. 803 00:36:05,670 --> 00:36:10,080 Jasno je, da ni dobro za prijatelja, ker ona mi daje težko. 804 00:36:10,080 --> 00:36:13,223 Lahko bi bilo lepše, da me pred vsakogar, moj učenec - 805 00:36:13,223 --> 00:36:14,580 >> PUBLIKA: delam svoje Q navodila. 806 00:36:14,580 --> 00:36:14,870 >> SPEAKER: Res? 807 00:36:14,870 --> 00:36:15,510 Uh oh. 808 00:36:15,510 --> 00:36:17,224 OK, ti si neverjeten. 809 00:36:17,224 --> 00:36:19,380 Tudi jaz te imam rada. 810 00:36:19,380 --> 00:36:20,600 Oh fant. 811 00:36:20,600 --> 00:36:28,320 >> Kakorkoli že, sem, sinoči, kot vse - 812 00:36:28,320 --> 00:36:32,220 Prepričan sem, da vsi mi zdi zelo Poudaril zdaj. 813 00:36:32,220 --> 00:36:35,970 Ne vem, ali novinec - so vi občutek poudaril? 814 00:36:35,970 --> 00:36:36,855 Počutim poudaril. 815 00:36:36,855 --> 00:36:37,980 Bilo je kot, greš domov za zahvalni dan. 816 00:36:37,980 --> 00:36:40,660 Ti si kot, da bom vse te stvari. 817 00:36:40,660 --> 00:36:41,530 >> PUBLIKA: To je tako drugačen. 818 00:36:41,530 --> 00:36:42,560 >> Govoril je: Ja, in prideš nazaj. 819 00:36:42,560 --> 00:36:45,290 Jeff, ti ne čutiš tako? 820 00:36:45,290 --> 00:36:46,610 >> PUBLIKA: Mislil sem, Jaz bi naredil malo. 821 00:36:46,610 --> 00:36:48,660 >> SPEAKER: OK, super. 822 00:36:48,660 --> 00:36:51,650 Tako sem prišel nazaj, pa še nisem storiti ničesar. 823 00:36:51,650 --> 00:36:53,260 In to je vse super stresno. 824 00:36:53,260 --> 00:36:55,640 In jaz sem zaskrbljen, resnično zaskrbljen, o tem, ali sem 825 00:36:55,640 --> 00:36:57,380 bo do konca vse, kar moram. 826 00:36:57,380 --> 00:37:01,750 Ampak sinoči, nisem poudaril, Bil sem malo žalostna. 827 00:37:01,750 --> 00:37:04,520 Zato sem napisal v mojem dnevniku o kar sem bil žalosten okoli. 828 00:37:04,520 --> 00:37:08,020 In sem bil žalosten zaradi tega oddelka v tem razredu bliža koncu. 829 00:37:08,020 --> 00:37:11,100 >> Zato sem bil šele tekoč, da se glasi za vaju mali košček mojega dnevnika, 830 00:37:11,100 --> 00:37:12,950 od sinoči. 831 00:37:12,950 --> 00:37:17,400 Lahko dobim nekaj prtičkov, nekaj tkiva iz Tom? 832 00:37:17,400 --> 00:37:18,040 Ne bom jokal. 833 00:37:18,040 --> 00:37:19,720 Ne joči. 834 00:37:19,720 --> 00:37:22,030 Saj ne, da ne moreš jokati, Jaz samo ne jokaj. 835 00:37:22,030 --> 00:37:24,040 Sploh ne vem, če je moja solza žleze delal - solza vodi. 836 00:37:24,040 --> 00:37:25,630 Jokala nisem že dolgo časa. 837 00:37:25,630 --> 00:37:26,510 >> PUBLIKA: [neslišno]. 838 00:37:26,510 --> 00:37:28,920 >> SPEAKER: OK, hvala. 839 00:37:28,920 --> 00:37:30,070 V redu, tam je malo predgovor - 840 00:37:30,070 --> 00:37:32,480 tam je nekaj drugih delov mojega dnevnika vstop, ker skušam reviji vsak 841 00:37:32,480 --> 00:37:33,600 noč, preden sem dobil v posteljo. 842 00:37:33,600 --> 00:37:34,900 Priporočam beležke. 843 00:37:34,900 --> 00:37:38,600 To vam pomaga obdelati stvari, in tudi zelo hvaležni vaš dan. 844 00:37:38,600 --> 00:37:43,063 In je zato veliko lažje gledati nazaj na dan, in ugotovili, da 845 00:37:43,063 --> 00:37:44,240 je bilo veliko dobrega stvari, ki so se zgodile. 846 00:37:44,240 --> 00:37:47,240 Tudi če se počutite res poudaril, ponoči ali zelo razburjeni, ali 847 00:37:47,240 --> 00:37:49,022 res žalostno ali utrujeni. 848 00:37:49,022 --> 00:37:50,272 >> Oh, moj bog. 849 00:37:50,272 --> 00:37:52,546 850 00:37:52,546 --> 00:37:54,400 Sploh ne vem, če je zapisano, da ker tudi jaz ga nisem lektorirano. 851 00:37:54,400 --> 00:37:55,780 Ampak ga bomo prebrali. 852 00:37:55,780 --> 00:37:59,950 Jaz ponavadi ne berejo moje revija, seveda. 853 00:37:59,950 --> 00:38:03,720 >> "Jutri bom naučil moj finale Oddelek CS50 leta. 854 00:38:03,720 --> 00:38:05,860 To je noro, kako hitro čas leti. 855 00:38:05,860 --> 00:38:09,900 Kljub temu, sem presenečen, kako različni moja izkušnja uči letos je bilo 856 00:38:09,900 --> 00:38:11,365 kot takrat, ko sem bil v drugem letniku. 857 00:38:11,365 --> 00:38:14,120 Za predjed, jaz definitivno veš material bolje. 858 00:38:14,120 --> 00:38:16,820 Ampak ne povem mojo prvo kohorto študentov, ki. 859 00:38:16,820 --> 00:38:20,030 Še pomembneje pa sem spoznal, da je veselje, ki prihaja iz položaja 860 00:38:20,030 --> 00:38:23,160 v sprednji sobi tega, kar se začne ven kot tujci, ampak konča kot na 861 00:38:23,160 --> 00:38:27,150 Vsaj, Facebook prijatelji, je Ne prvo leto krompir. 862 00:38:27,150 --> 00:38:29,970 Nasprotno, to je od vedoč, da je v nekaj manjših način, si pomagamo 863 00:38:29,970 --> 00:38:32,980 nadarjen, premišljen, čudovito in strastni ljudje naučijo malo več 864 00:38:32,980 --> 00:38:34,750 o računalništvu. 865 00:38:34,750 --> 00:38:37,480 >> Ste seli, da žarnico samo bit v vtičnico, tako da je sposobna 866 00:38:37,480 --> 00:38:42,120 sijati svetlejša od vas, ali pa, Lahko bi si predstavljal na začetku semestra. 867 00:38:42,120 --> 00:38:45,390 Pomagate pa ti frowns na glavo navzdol in postavljati vprašanja, ki 868 00:38:45,390 --> 00:38:49,240 zagotoviti podporo, vendar še vedno omogoča študente, da stojijo sami. 869 00:38:49,240 --> 00:38:52,190 >> To gotovo ni pretirano pravijo, da je to poglavje moja najljubša 870 00:38:52,190 --> 00:38:53,190 del tedna. 871 00:38:53,190 --> 00:38:57,930 Ali celo, da sem okleval reči, da je Vse, ob 05:30 vsak teden, vedoč 872 00:38:57,930 --> 00:39:00,640 da bo to predolgo dokler se spet srečava. 873 00:39:00,640 --> 00:39:02,740 >> Kljub temu, da sem izjemno hvaležen vsakdo, ki mi je dal to 874 00:39:02,740 --> 00:39:05,010 priložnost, da se vrnemo k drugim. 875 00:39:05,010 --> 00:39:07,340 Davidu za njegovo potrpežljivost in zaupanje. 876 00:39:07,340 --> 00:39:11,040 Za filmske in produkcijske ekipe, za da izgledam nekoliko ugleden. 877 00:39:11,040 --> 00:39:15,380 In kar je najpomembneje, da se mojih učencev, brez katerih bi Nimam razloga, da bi 878 00:39:15,380 --> 00:39:17,890 preživijo 10 ur poskušal ugotoviti najboljše način, da se pripravijo kazalci, ali razpostavite 879 00:39:17,890 --> 00:39:20,330 miza delfinov, prek JavaScript. 880 00:39:20,330 --> 00:39:22,620 Kot vedno, to je bil blagoslov. " 881 00:39:22,620 --> 00:39:25,420 >> Torej s tem, hvala fantje. 882 00:39:25,420 --> 00:39:29,000 Bom videl, da vsi na sejmu CS50, in hackathon, če si tam. 883 00:39:29,000 --> 00:39:32,020 In če imate vprašanja, bom palico okrog, dokler ne obstajajo več. 884 00:39:32,020 --> 00:39:33,760 Ampak sem hvala fantje za čudovito leto. 885 00:39:33,760 --> 00:39:37,290 >> [APPLAUSE] 886 00:39:37,290 --> 00:39:38,540 >> SPEAKER: Jaz bi jokal. 887 00:39:38,540 --> 00:39:40,800