1 00:00:00,000 --> 00:00:07,700 2 00:00:07,700 --> 00:00:15,180 >> SPEAKER: OK, takže nebudete veriť, ale minulý týždeň, v pondelok, v Pierce, Aj 3 00:00:15,180 --> 00:00:16,090 bol dole v suteréne. 4 00:00:16,090 --> 00:00:17,010 Nikdy som ísť na Pierce. 5 00:00:17,010 --> 00:00:20,530 A ja nikdy nebudem vracať, pretože Nechala som si veci sám, 6 00:00:20,530 --> 00:00:23,950 ako päť minút a niekto ukradol počítač a moje 7 00:00:23,950 --> 00:00:26,050 telefón z batohu. 8 00:00:26,050 --> 00:00:28,780 Čo znamená, že som sa dostal späť, a potom menej než o týždeň neskôr 9 00:00:28,780 --> 00:00:30,220 sa dostal opäť ukradol. 10 00:00:30,220 --> 00:00:31,570 >> A potom sa dostal zapnutia - 11 00:00:31,570 --> 00:00:34,540 Find My iPhone pokračuje byť neužitočné. 12 00:00:34,540 --> 00:00:37,340 Tak som aj naďalej podporovať nebudete používať. 13 00:00:37,340 --> 00:00:42,270 Je zapnuté raz, a to bolo v MIT, rovnako ako 15 minút neskôr, a osoba, 14 00:00:42,270 --> 00:00:45,770 volal toto telefónne číslo, ktoré ukázali, v mojom AT & T volanie. 15 00:00:45,770 --> 00:00:48,830 >> Tak som šiel on-line, volal, že telefón číslo, a šiel rovno na to 16 00:00:48,830 --> 00:00:50,540 záznamník v španielčine. 17 00:00:50,540 --> 00:00:52,520 A ja som o tom počul od. 18 00:00:52,520 --> 00:00:54,800 Takže som sa musel dostať nový počítač a telefón. 19 00:00:54,800 --> 00:00:55,150 Ja viem. 20 00:00:55,150 --> 00:00:56,326 Jo. 21 00:00:56,326 --> 00:01:00,110 Ale ak vy chcete čip do môjho Počítač fondu po tomto, to je dôvod, prečo 22 00:01:00,110 --> 00:01:01,030 Pýtal som sa ťa tu. 23 00:01:01,030 --> 00:01:02,280 Len si robím srandu. 24 00:01:02,280 --> 00:01:04,239 25 00:01:04,239 --> 00:01:07,420 Ale to bolo naozaj smutné a traumatizujúce. 26 00:01:07,420 --> 00:01:10,700 >> Ale je to všetko späť, a to bol dôvod, prečo p-set 8 trvalo tak dlho, pretože 27 00:01:10,700 --> 00:01:12,480 Som nemal počítač. 28 00:01:12,480 --> 00:01:13,730 A niekto ho ukradol. 29 00:01:13,730 --> 00:01:16,940 A ja som e-mailom, s otázkou, či sa by grade vaša p-sada 8. 30 00:01:16,940 --> 00:01:18,790 Ale povedal, že nie. 31 00:01:18,790 --> 00:01:20,000 A bol som rád, môžem mať môj počítač späť? 32 00:01:20,000 --> 00:01:21,270 A oni to ako, no. 33 00:01:21,270 --> 00:01:22,130 Len si robím srandu. 34 00:01:22,130 --> 00:01:22,930 >> OK. 35 00:01:22,930 --> 00:01:28,140 To je naša posledná časť, a mám pár - máme len tri 36 00:01:28,140 --> 00:01:29,790 veci na programe rokovania. 37 00:01:29,790 --> 00:01:31,330 Budeme hovoriť trochu o sprievodcovi Q. 38 00:01:31,330 --> 00:01:33,900 Potom budeme tráviť 15 minút na chladnom demo. 39 00:01:33,900 --> 00:01:36,890 Potom budeme všetci hovoria, Zabudnite na sebe. 40 00:01:36,890 --> 00:01:41,460 Nemáte naozaj potrebujete počítačov alebo pero, alebo papier na poznámky, alebo 41 00:01:41,460 --> 00:01:42,410 sledovať spolu. 42 00:01:42,410 --> 00:01:45,620 Takže predpokladám, že ak máte počítač up, potom ste na Facebooku. 43 00:01:45,620 --> 00:01:46,530 Len hovorím. 44 00:01:46,530 --> 00:01:49,650 Ak ste vypĺňanie Q sprievodca, ktorý je ako prvý. 45 00:01:49,650 --> 00:01:50,690 >> Sprievodca Q je otvorená. 46 00:01:50,690 --> 00:01:53,520 Mali ste e-mail o tom. 47 00:01:53,520 --> 00:01:56,930 Akonáhle sú všetky Q veci sa podáva na koniec roka, som si všetky 48 00:01:56,930 --> 00:02:03,710 Q pripomienky skóre zo všetkých strán ktorý sa rozhodne dať mi spätnú väzbu. 49 00:02:03,710 --> 00:02:04,810 A tak, keď idete do Q - 50 00:02:04,810 --> 00:02:07,440 Ja neviem, či to dokážeš, Jeff, pretože si a rozšírenie študenta. 51 00:02:07,440 --> 00:02:12,730 Ale keď idete do Q, ak nemáte to urobil predtým, si vyberiete svoj 52 00:02:12,730 --> 00:02:14,020 učiteľ, ktorý je David Malan. 53 00:02:14,020 --> 00:02:14,970 Musíte ho urobiť. 54 00:02:14,970 --> 00:02:15,690 >> A potom si môžete vybrať TFS. 55 00:02:15,690 --> 00:02:17,750 A môžete si vybrať, ako veľa TFS, ako chcete. 56 00:02:17,750 --> 00:02:18,990 Ale existuje 60 z nás. 57 00:02:18,990 --> 00:02:20,350 Nemusíte vyberať každého. 58 00:02:20,350 --> 00:02:23,090 Môžeš ma len vybrať, alebo len vybrať pár ďalších ľudí, ak chcete, aby 59 00:02:23,090 --> 00:02:24,470 dať im spätnú väzbu, ako dobre. 60 00:02:24,470 --> 00:02:27,595 A potom dostanete skóre na všetkých týchto rôzne osi, a potom si môžete nechať 61 00:02:27,595 --> 00:02:28,570 je spätná väzba. 62 00:02:28,570 --> 00:02:31,520 >> A potom, rovnako ako o mesiac neskôr, Dostanem všetko, že spätná väzba. 63 00:02:31,520 --> 00:02:34,570 A rovnako ako spätná väzba ste boli že mi v priebehu semestra, som 64 00:02:34,570 --> 00:02:35,790 čítať všetko. 65 00:02:35,790 --> 00:02:39,620 A je to naozaj užitočné, a to pomáha mi rastú ako učiteľ a ako 66 00:02:39,620 --> 00:02:40,680 individuálne. 67 00:02:40,680 --> 00:02:43,360 Takže, prosím, vziať nejaký čas na to. 68 00:02:43,360 --> 00:02:45,020 Sme len bude tu pre, ako, 30 minút. 69 00:02:45,020 --> 00:02:48,090 Takže ak chcete, na konci tohto, na päť minút, a stačí vyplniť 70 00:02:48,090 --> 00:02:49,960 Q, pretože to neberie viac času než to. 71 00:02:49,960 --> 00:02:53,410 To by bolo skvelé, a tiež dostať svoje triedy späť oveľa rýchlejšie, ak 72 00:02:53,410 --> 00:02:54,620 môžete vyplniť Q. 73 00:02:54,620 --> 00:02:56,580 >> Takže väčšina z vás urobil, že pred - 74 00:02:56,580 --> 00:02:58,240 alebo nie, asi polovica z vás urobil, že pred. 75 00:02:58,240 --> 00:03:00,060 Ale ak ste nováčik, to je to, čo to je. 76 00:03:00,060 --> 00:03:01,910 Bude to rovnaké pre všetky triedy. 77 00:03:01,910 --> 00:03:02,270 Urob to. 78 00:03:02,270 --> 00:03:02,900 Trvá to päť minút. 79 00:03:02,900 --> 00:03:07,610 Ale tiež, ak si to trochu vážne, že to nie je to najhoršie, čo 80 00:03:07,610 --> 00:03:10,270 na svete, pretože som určite brať vážne. 81 00:03:10,270 --> 00:03:13,000 >> Takže ak ste ma nechať smajlíka, Aj ocenia, že. 82 00:03:13,000 --> 00:03:17,550 Ale ja by som tiež ocenil, ak vám ma opustil viac než smajlíka. 83 00:03:17,550 --> 00:03:18,270 Ale je to len na vás. 84 00:03:18,270 --> 00:03:21,540 Nemôžem povedať - alebo ako veľký smajlík tvár, s veľkým D. To by 85 00:03:21,540 --> 00:03:23,060 byť ešte lepší. 86 00:03:23,060 --> 00:03:27,860 >> OK, to je všetko, čo mám na Q. Ak máte nejaké otázky, môžete sa opýtať 87 00:03:27,860 --> 00:03:29,370 mi, ale celkom samo-vysvetľujúce. 88 00:03:29,370 --> 00:03:31,090 Len, prosím, vyplňte ju. 89 00:03:31,090 --> 00:03:34,390 Ja by som v skutočnosti oceniť ono, a to znamená pre mňa veľa. 90 00:03:34,390 --> 00:03:38,910 >> OK, to je to, čo sa chystáte minúť 15 minút prechádza. 91 00:03:38,910 --> 00:03:39,800 Chystám sa vám ukázať nejaký kód. 92 00:03:39,800 --> 00:03:42,080 Myslím, že to je naozaj cool, a to ma dostal viac 93 00:03:42,080 --> 00:03:43,810 vzrušená v informatike. 94 00:03:43,810 --> 00:03:46,480 Takže dúfam, že to bude robiť To isté pre vás všetkých. 95 00:03:46,480 --> 00:03:51,760 >> Chystáme sa otvoriť - a to všetko Kód pošlem vám neskôr. 96 00:03:51,760 --> 00:03:52,680 Ale my sme len tak otvoriť - 97 00:03:52,680 --> 00:03:54,310 Ja som vo svojom termináli - 98 00:03:54,310 --> 00:03:56,810 budeme otvárať tento program s názvom [? Mysu. ?] 99 00:03:56,810 --> 00:04:01,290 100 00:04:01,290 --> 00:04:02,540 >> Každý môže prečítať, že, alebo Mal by som robiť to väčšie? 101 00:04:02,540 --> 00:04:07,670 102 00:04:07,670 --> 00:04:13,040 Môže mi niekto povedať, čo tento kód bude robiť, keď som ho spustiť, alebo čo to 103 00:04:13,040 --> 00:04:14,320 Program bude robiť, keď som ho spustiť? 104 00:04:14,320 --> 00:04:30,710 105 00:04:30,710 --> 00:04:32,400 >> [? Avi,?] Čo si myslíte to bude robiť? 106 00:04:32,400 --> 00:04:33,335 Dokončiť žuvanie. 107 00:04:33,335 --> 00:04:35,033 Nemali by ste hovoriť s vaše ústa otvorené. 108 00:04:35,033 --> 00:04:38,330 109 00:04:38,330 --> 00:04:42,860 >> DIVÁKOV: Má to trvať veľa argumenty, nájsť súčet ich návratu 110 00:04:42,860 --> 00:04:45,285 súčet, a potom ho vytlačiť? 111 00:04:45,285 --> 00:04:53,045 Alebo to trvá dva argumenty, a potom to robí [nepočuteľné]. 112 00:04:53,045 --> 00:04:56,460 A potom sa to vytlačí čokoľvek výsledky sú. 113 00:04:56,460 --> 00:04:58,100 >> SPEAKER: Close, naozaj blízko. 114 00:04:58,100 --> 00:04:59,840 Niekto chcete pridať do [? čo Avi?] povedal? 115 00:04:59,840 --> 00:05:04,830 116 00:05:04,830 --> 00:05:07,293 Potrebujete, aby tento program žiadne argumenty príkazového riadku? 117 00:05:07,293 --> 00:05:09,145 >> Divákov: Nie 118 00:05:09,145 --> 00:05:09,610 >> SPEAKER: Nie 119 00:05:09,610 --> 00:05:11,250 Čo sa stane, ak nechcete, aby to žiadne argumenty príkazového riadku? 120 00:05:11,250 --> 00:05:12,500 Len som napísať bodka lomítko mysu. 121 00:05:12,500 --> 00:05:15,145 122 00:05:15,145 --> 00:05:16,630 >> DIVÁKOV: 1 plus 2 sa rovná 3. 123 00:05:16,630 --> 00:05:17,250 >> SPEAKER: 1 plus 2 sa rovná 3. 124 00:05:17,250 --> 00:05:18,570 A to bude tlačiť, že von. 125 00:05:18,570 --> 00:05:19,450 To je presne to pravé. 126 00:05:19,450 --> 00:05:21,370 Uvidíte, že tlačové f riadku v dolnej časti. 127 00:05:21,370 --> 00:05:23,450 Je to vytlačiť a, b, a potom súčet A a B. 128 00:05:23,450 --> 00:05:26,360 A myslím, že sa domnievate, že Súčet funguje správne. 129 00:05:26,360 --> 00:05:28,120 Dobrý predpoklad. 130 00:05:28,120 --> 00:05:32,250 >> OK, a čo sa stane, keď dať to, čo hádka? 131 00:05:32,250 --> 00:05:33,010 [? Manu? ?] 132 00:05:33,010 --> 00:05:36,230 >> DIVÁKOV: Bude pridať čokoľvek Prvý argument je b. 133 00:05:36,230 --> 00:05:37,150 Alebo 2, je mi ľúto. 134 00:05:37,150 --> 00:05:38,480 >> SPEAKER: Jasne, na 2. 135 00:05:38,480 --> 00:05:42,470 Vie niekto, čo strtol robí? 136 00:05:42,470 --> 00:05:43,960 Je to v podstate atoi. 137 00:05:43,960 --> 00:05:47,240 Atoi je vlastne vymyslené verzia - 138 00:05:47,240 --> 00:05:49,600 alebo jednoduchšia verzia strtol. 139 00:05:49,600 --> 00:05:51,790 Ale to vlastne používa strtol. 140 00:05:51,790 --> 00:05:54,610 141 00:05:54,610 --> 00:05:58,010 A ja som zistil, že, pretože som chcel, niečo ako atoi, a potom, keď som sa 142 00:05:58,010 --> 00:06:01,110 sa atoi, čítal som tu dole. 143 00:06:01,110 --> 00:06:04,380 A ja som našiel "toto správanie je rovnaké ako "strtol. 144 00:06:04,380 --> 00:06:06,850 Takže je to v podstate atoi pre všetky zámery a účely. 145 00:06:06,850 --> 00:06:09,320 A vidíte, ešte som použiť null a 10. 146 00:06:09,320 --> 00:06:14,390 >> To skutočne umožňuje robiť reťazec, a premeniť ju na číslo, a vyberte 147 00:06:14,390 --> 00:06:15,970 aký základný chcete urobiť palcov 148 00:06:15,970 --> 00:06:17,370 Tak to je základ 10 tu. 149 00:06:17,370 --> 00:06:20,455 Mohol som urobiť základné dva na jedno desatinné miesto, základňa 16 pre hexadecimálne. 150 00:06:20,455 --> 00:06:22,090 Je to celkom v pohode. 151 00:06:22,090 --> 00:06:25,860 Ale dlhý príbeh krátky, to trvá dva čísla a spočíta je. 152 00:06:25,860 --> 00:06:29,260 >> Takže poďme spustite ho. 153 00:06:29,260 --> 00:06:32,560 A budete tiež všimnúť, že sú niektoré veci - 154 00:06:32,560 --> 00:06:37,830 takže mám makefile tu, a Ak otvoríte že sa niektoré veci 155 00:06:37,830 --> 00:06:39,270 si všimnete, sú rôzne. 156 00:06:39,270 --> 00:06:42,370 Konkrétne, tento argument tu, ste pravdepodobne 157 00:06:42,370 --> 00:06:43,010 Nevidel, že pred. 158 00:06:43,010 --> 00:06:45,770 Všeobecne platí, že sme sa zostaviť čo pomlčkou nula, nula. 159 00:06:45,770 --> 00:06:51,500 Dash nula, nula, znamená, že nemusíte robiť akékoľvek optimalizácia, kompilátor. 160 00:06:51,500 --> 00:06:54,950 Nesnažte sa robiť nič chuť, alebo robiť čokoľvek spustiť rýchlejšie, alebo sa 161 00:06:54,950 --> 00:06:56,530 zbaviť premenných, ktoré sú nevyhnutné. 162 00:06:56,530 --> 00:06:58,080 Nepoužívajte optimalizovať tento kód vôbec, 163 00:06:58,080 --> 00:07:00,110 >> Pýtam sa na tretej úrovni optimalizácia. 164 00:07:00,110 --> 00:07:02,580 Takže sa pýtam kompilátor robiť Mnoho optimalizáciou. 165 00:07:02,580 --> 00:07:05,870 Môžete zmeniť v makefile, kedy Máte tento kód, ak chcete 166 00:07:05,870 --> 00:07:07,190 vidieť rôzne veci. 167 00:07:07,190 --> 00:07:08,660 Čo my vám ukážeme, v sekunde. 168 00:07:08,660 --> 00:07:12,080 Takže sme sa spustiť svoj čiastku 1 plus 2 plus 3. 169 00:07:12,080 --> 00:07:13,445 Niekto mi dajte dva argumenty. 170 00:07:13,445 --> 00:07:17,221 171 00:07:17,221 --> 00:07:18,210 >> DIVÁKOV: 4 a 5. 172 00:07:18,210 --> 00:07:18,966 >> SPEAKER: 4 a 5. 173 00:07:18,966 --> 00:07:19,900 Ďakujem. 174 00:07:19,900 --> 00:07:20,860 Skvelé, funguje to. 175 00:07:20,860 --> 00:07:25,700 Aké sú niektoré ďalšie dobré argumenty pokúsiť, aby sa ubezpečil to funguje? 176 00:07:25,700 --> 00:07:27,050 Každý, kto? 177 00:07:27,050 --> 00:07:27,430 >> DIVÁKOV: 0. 178 00:07:27,430 --> 00:07:29,210 >> SPEAKER: 0 a? 179 00:07:29,210 --> 00:07:31,010 >> DIVÁKOV: Negatívne 3. 180 00:07:31,010 --> 00:07:32,040 >> SPEAKER: Funguje to. 181 00:07:32,040 --> 00:07:33,670 Ale to bolo dobré rozhodnutie. 182 00:07:33,670 --> 00:07:36,600 OK, takže poďme späť. 183 00:07:36,600 --> 00:07:38,540 To je mysum.c. 184 00:07:38,540 --> 00:07:42,440 Všimnete si, že je to tiež niečo volal sumfunction.c. 185 00:07:42,440 --> 00:07:48,110 A to hovorí, ach, je tu niečo, sú definované v sumfunction.c. 186 00:07:48,110 --> 00:07:51,480 Nechcem tento súbor zahrnúť sem pretože nemusíte. 187 00:07:51,480 --> 00:07:54,840 Ale ja prepojiť ju, keď som kompiláciu, ktorý ste si všimli. 188 00:07:54,840 --> 00:07:57,380 >> Poďme sa posunúť nahor. 189 00:07:57,380 --> 00:08:02,880 Videli sme, keď sme zostavili mysu, právo tam, čo sme prepojili v binárnom 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 A nepotrebujem hlavičkový súbor pretože, samozrejme, je tu 193 00:08:08,470 --> 00:08:09,240 Deklarácie funkcie. 194 00:08:09,240 --> 00:08:12,200 Tak ostré sú normálne len vezme v deklarácii funkcie. 195 00:08:12,200 --> 00:08:13,730 Tu som len dať to rovno v kóde. 196 00:08:13,730 --> 00:08:16,370 A tak musím urobiť, je odkaz v binárnej, ktoré robím. 197 00:08:16,370 --> 00:08:19,950 >> Akékoľvek odhady pre to, čo je v sumfunction.c? 198 00:08:19,950 --> 00:08:21,950 Aký kód som napísal v sumfunction.c? 199 00:08:21,950 --> 00:08:25,445 200 00:08:25,445 --> 00:08:26,695 >> DIVÁKOV: [nepočuteľné]. 201 00:08:26,695 --> 00:08:29,460 202 00:08:29,460 --> 00:08:30,630 >> SPEAKER: Akékoľvek odhady? 203 00:08:30,630 --> 00:08:30,940 Jo? 204 00:08:30,940 --> 00:08:33,710 >> Divákov: Myslím, že definuje niektoré [nepočuteľný]. 205 00:08:33,710 --> 00:08:33,975 >> SPEAKER: Áno. 206 00:08:33,975 --> 00:08:37,650 Tak som to firmy int súčet int. 207 00:08:37,650 --> 00:08:41,120 Píšem tento riadok, a potom mám otvorené zložená zátvorka, uzavretá zložená zátvorka. 208 00:08:41,120 --> 00:08:46,160 Čo si myslíš, že píšem v tých zložené zátvorky, vnútri tejto funkcie? 209 00:08:46,160 --> 00:08:46,600 Jo? 210 00:08:46,600 --> 00:08:48,150 >> DIVÁKOV: Návrat rovná. 211 00:08:48,150 --> 00:08:50,010 >> Procesor: To je naozaj dobrý odhad. 212 00:08:50,010 --> 00:08:51,720 Kto si myslí, že [? Manu?] Má pravdu? 213 00:08:51,720 --> 00:08:54,122 To hovorí, že vrátiť a navyše b. 214 00:08:54,122 --> 00:08:55,860 OK, nie všetci. 215 00:08:55,860 --> 00:08:56,520 [? Akshar,?] 216 00:08:56,520 --> 00:08:57,390 ty taky? 217 00:08:57,390 --> 00:09:00,430 Si si istý? 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 Čo je? 221 00:09:10,050 --> 00:09:11,662 >> DIVÁKOV: hláskoval si to zle. 222 00:09:11,662 --> 00:09:13,000 >> SPEAKER: Nie, ja nie. 223 00:09:13,000 --> 00:09:13,966 Jo, robím si srandu. 224 00:09:13,966 --> 00:09:15,300 Máš pravdu. 225 00:09:15,300 --> 00:09:15,930 To je presne to, čo hovorí. 226 00:09:15,930 --> 00:09:17,110 Je to vrátiť a naviac b. 227 00:09:17,110 --> 00:09:18,570 To robí veľa zmysel. 228 00:09:18,570 --> 00:09:20,240 >> OK, poďme späť. 229 00:09:20,240 --> 00:09:21,490 Vidíme, ako sa hlavička - 230 00:09:21,490 --> 00:09:24,540 231 00:09:24,540 --> 00:09:25,660 to je návratový typ. 232 00:09:25,660 --> 00:09:29,100 Pamätajte si, že sme videli, že prvý deň, návratový typ funkcie, ale ide 233 00:09:29,100 --> 00:09:30,160 pred názvom funkcie int. 234 00:09:30,160 --> 00:09:31,560 Tu som napísal int. 235 00:09:31,560 --> 00:09:35,680 Čo si myslíte, že sa stane, ak v tomto funkcie, nepíšem int, ale 236 00:09:35,680 --> 00:09:38,270 Píšem unsigned? 237 00:09:38,270 --> 00:09:41,050 Rozdiel, samozrejme, je, že unsigned predstavuje iba pozitívne 238 00:09:41,050 --> 00:09:43,620 celé čísla, a int môžu byť pozitívne alebo negatívne. 239 00:09:43,620 --> 00:09:45,450 >> Tak som zmenil návrat typ tejto funkcie. 240 00:09:45,450 --> 00:09:49,370 Tento kód sa nezhoduje opíšte tento návrat. 241 00:09:49,370 --> 00:09:50,925 Čo si myslíte, že sa stane keď som kompiláciu? 242 00:09:50,925 --> 00:09:53,840 243 00:09:53,840 --> 00:09:56,240 Mali by ste na mňa kričať. 244 00:09:56,240 --> 00:09:57,700 Žiadny krik. 245 00:09:57,700 --> 00:10:00,050 >> Čo keď som spustení programu? 246 00:10:00,050 --> 00:10:05,810 Poďme urobiť pred 0 Negatívny 3, alebo negatívne 1.. 247 00:10:05,810 --> 00:10:10,180 Je to stále funguje, aj keď hovorím, je to vrátením celé číslo bez znamienka. 248 00:10:10,180 --> 00:10:12,060 Je jasné, že to nie je návratu celé číslo bez znamienka. 249 00:10:12,060 --> 00:10:13,520 Je to vrátením celej číslo so znamienkom. 250 00:10:13,520 --> 00:10:16,130 Je to vracia negatívna 1. 251 00:10:16,130 --> 00:10:17,830 OK, to je divné. 252 00:10:17,830 --> 00:10:27,030 >> Čo keď pôjdem do tu a robiť, že? 253 00:10:27,030 --> 00:10:29,700 Tak som sa všetko zmenilo z int na unsigned. 254 00:10:29,700 --> 00:10:31,590 To môže trvať len nepodpísané celé čísla. 255 00:10:31,590 --> 00:10:33,840 Ale stále si myslím, že to beží? 256 00:10:33,840 --> 00:10:35,652 >> DIVÁKOV: Áno. 257 00:10:35,652 --> 00:10:37,270 >> SPEAKER: to bude. 258 00:10:37,270 --> 00:10:39,410 To je šialené. 259 00:10:39,410 --> 00:10:43,140 A míňame v jednoznačne priradiť celé číslo, môžeme prejsť dva podpísali 260 00:10:43,140 --> 00:10:46,280 celé číslo, to ešte funguje. 261 00:10:46,280 --> 00:10:52,150 >> OK, nejaké nápady, prečo je stále funguje, alebo to, čo sa deje? 262 00:10:52,150 --> 00:10:53,368 Jo, Jeff. 263 00:10:53,368 --> 00:10:56,296 >> DIVÁKOV: To má čo do činenia s optimalizáciou, ktoré 264 00:10:56,296 --> 00:10:57,760 zvýrazní. 265 00:10:57,760 --> 00:10:58,210 >> SPEAKER: Nie 266 00:10:58,210 --> 00:11:00,570 Mohli by sme zmeniť optimalizácia, to by ešte fungovať. 267 00:11:00,570 --> 00:11:02,240 Môžem to urobiť pre vás, ale - 268 00:11:02,240 --> 00:11:02,930 >> Divákov: Vezmem vás za slovo. 269 00:11:02,930 --> 00:11:03,690 >> SPEAKER: Jo. 270 00:11:03,690 --> 00:11:09,690 Ak otvoríte makefile tu, Zmenil som optimalizáciu. 271 00:11:09,690 --> 00:11:11,570 Takže si môžete urobiť pomlčka nula, nula. 272 00:11:11,570 --> 00:11:12,820 To bude ešte pracovať. 273 00:11:12,820 --> 00:11:16,839 274 00:11:16,839 --> 00:11:20,280 Iné myšlienky? 275 00:11:20,280 --> 00:11:22,600 >> Vy všetci Očakáva sa, že práca, tak Prečo ste očakávať, že to funguje? 276 00:11:22,600 --> 00:11:31,210 277 00:11:31,210 --> 00:11:32,150 Nie? 278 00:11:32,150 --> 00:11:33,660 Ticho. 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 Musím čakať sedem sekúnd, preto, že som sa pýtal. 282 00:11:41,650 --> 00:11:44,190 283 00:11:44,190 --> 00:11:48,660 >> Takže super vec o C, a vy ste pravdepodobne nezažili - vami 284 00:11:48,660 --> 00:11:50,260 nemusí mať, mohlo by to byť prvýkrát. 285 00:11:50,260 --> 00:11:57,030 Ale ako všetci viete, keď píšem niečo v C, to neukladá ako 286 00:11:57,030 --> 00:11:57,760 to na počítači. 287 00:11:57,760 --> 00:11:59,440 Je uložený ako jedničiek a núl. 288 00:11:59,440 --> 00:12:02,970 Ide z kódu C do assembleri. 289 00:12:02,970 --> 00:12:09,460 >> Videl niekto assembleri skôr, Stroj montážne kód? 290 00:12:09,460 --> 00:12:10,630 Pozrieme sa na sekundu. 291 00:12:10,630 --> 00:12:12,040 Ide z kódu C do assembleri. 292 00:12:12,040 --> 00:12:13,755 A vy viete fázy kompilácie. 293 00:12:13,755 --> 00:12:17,410 Vy ste mali na pamäti, že pre jeden kvíz, a potom ho vypísať testu nulové. 294 00:12:17,410 --> 00:12:18,240 Väčšina ľudí to zle. 295 00:12:18,240 --> 00:12:19,760 Myslím, že vy ho pribil. 296 00:12:19,760 --> 00:12:22,880 >> Ale, vy ste najlepšia časť pre kvízy, mimochodom. 297 00:12:22,880 --> 00:12:25,210 Čo je úžasné. 298 00:12:25,210 --> 00:12:25,910 Nebude vás bolieť. 299 00:12:25,910 --> 00:12:26,900 Nerobte si starosti. 300 00:12:26,900 --> 00:12:28,800 Ale je to naozaj cool. 301 00:12:28,800 --> 00:12:29,660 Dobrá práca. 302 00:12:29,660 --> 00:12:32,870 >> Tak to ide do assembleri, a potom to ide do jednotiek a núl. 303 00:12:32,870 --> 00:12:35,500 A tie jednotky a nuly sú uložené na počítača, a to je to, čo uloží do 304 00:12:35,500 --> 00:12:38,340 a.out, alebo v tomto prípade, spustiteľný súbor. 305 00:12:38,340 --> 00:12:41,040 A počítač beží jedničiek a núl. 306 00:12:41,040 --> 00:12:41,670 Je to tak? 307 00:12:41,670 --> 00:12:43,890 Máme pred naučili to. 308 00:12:43,890 --> 00:12:47,490 >> Takže super vec je, že táto znamienka idea, myšlienka typov ints nesignováno, 309 00:12:47,490 --> 00:12:50,490 et cetera, et cetera, že je tu v jazyku C. 310 00:12:50,490 --> 00:12:51,110 Tí, ktorí existujú. 311 00:12:51,110 --> 00:12:53,770 Ale typy neexistujú v tie jednotky a nuly. 312 00:12:53,770 --> 00:12:57,110 Typy ani naozaj existujú na assembleri úroveň. 313 00:12:57,110 --> 00:13:00,075 Tak to je niečo, čo existuje v C svet, ale neexistuje v počítači 314 00:13:00,075 --> 00:13:01,640 svet alebo svet procesora. 315 00:13:01,640 --> 00:13:04,660 To je nejaký abstrakcie, že C jazyk je súčasťou, aby sa naše 316 00:13:04,660 --> 00:13:06,240 život jednoduchší. 317 00:13:06,240 --> 00:13:09,990 >> Takže na konci dňa, môžem napísať veľa rôznych vecí, tu, a to 318 00:13:09,990 --> 00:13:10,700 nerobí rozdiel. 319 00:13:10,700 --> 00:13:12,060 Vzhľadom k tomu, že existuje iba v C svete. 320 00:13:12,060 --> 00:13:14,100 To neexistuje v ty a nuly svet. 321 00:13:14,100 --> 00:13:17,310 A náš program je vykonávaný v ty a nuly svet. 322 00:13:17,310 --> 00:13:21,170 Takže zjavne nie je spálená ale vaša myseľ je. 323 00:13:21,170 --> 00:13:22,740 Ale myslím, že je to v pohode. 324 00:13:22,740 --> 00:13:23,530 Jo, Jeff. 325 00:13:23,530 --> 00:13:27,298 >> DIVÁKOV: Takže, ak je miesto robiť int, vy char. 326 00:13:27,298 --> 00:13:27,770 A vy ste boli - 327 00:13:27,770 --> 00:13:29,311 >> SPEAKER: Poďme to urobiť v sek. 328 00:13:29,311 --> 00:13:32,583 >> DIVÁKOV: Pretože potom dostanete unsigned bude z negatívneho 128 až 329 00:13:32,583 --> 00:13:34,720 127, alebo od 0 do 255.. 330 00:13:34,720 --> 00:13:36,760 >> SPEAKER: Tak char je problematické. 331 00:13:36,760 --> 00:13:39,460 Vie niekto, prečo by char sa problematické, a to by v skutočnosti 332 00:13:39,460 --> 00:13:42,930 zmeniť veci v tých a nuly svet? 333 00:13:42,930 --> 00:13:44,370 >> DIVÁKOV: Vzhľadom k veľkosti char. 334 00:13:44,370 --> 00:13:46,200 >> SPEAKER: Veľkosť znaku je 1. 335 00:13:46,200 --> 00:13:48,260 Takže unsigned je 4 bajty. 336 00:13:48,260 --> 00:13:50,080 Takže char by skrutku veci do poriadku. 337 00:13:50,080 --> 00:13:55,660 Ale to, čo sa 4 byty, ktorý je vzťahujúce sa k char? 338 00:13:55,660 --> 00:13:57,820 Alebo, že pridá jeden ďalší - 339 00:13:57,820 --> 00:13:59,760 môžete si dať ešte jednu postavu po char. 340 00:13:59,760 --> 00:14:00,200 >> DIVÁKOV: Char hviezda. 341 00:14:00,200 --> 00:14:01,220 >> SPEAKER: Char hviezda má 4 bajty. 342 00:14:01,220 --> 00:14:02,490 Takže poďme niečo urobiť to je char hviezda. 343 00:14:02,490 --> 00:14:05,470 344 00:14:05,470 --> 00:14:07,240 >> Tak by to asi fungovať, ale my sme robiť niečo ešte 345 00:14:07,240 --> 00:14:09,710 šialenejšie než toto. 346 00:14:09,710 --> 00:14:10,960 Podľa môjho názoru, bláznivejšie. 347 00:14:10,960 --> 00:14:21,060 348 00:14:21,060 --> 00:14:24,570 >> Ja som teraz napísal funkciu, ktorá vracia ukazovateľ, a to trvá 349 00:14:24,570 --> 00:14:29,480 ukazovateľ a hodnota bez znamienka - budeme zmeniť späť na int, takže nie sme 350 00:14:29,480 --> 00:14:31,250 robiť príliš veľa zmien naraz. 351 00:14:31,250 --> 00:14:35,370 A to má rad nazvanú a, indexy do poľa, a vráti sa 352 00:14:35,370 --> 00:14:35,850 adresa. 353 00:14:35,850 --> 00:14:37,470 My sme tieto operátormi nevidel. 354 00:14:37,470 --> 00:14:43,340 To, čo si myslíš, že to bude k tomu, na oplátku, keď som ho spustiť? 355 00:14:43,340 --> 00:14:48,280 356 00:14:48,280 --> 00:14:49,070 Čo si myslíte, že to bude robiť? 357 00:14:49,070 --> 00:14:50,320 Akékoľvek odhady? 358 00:14:50,320 --> 00:14:54,220 359 00:14:54,220 --> 00:14:55,320 >> DIVÁKOV: segfault. 360 00:14:55,320 --> 00:14:55,600 >> SPEAKER: Čo? 361 00:14:55,600 --> 00:14:56,660 Segfault? 362 00:14:56,660 --> 00:14:58,520 To je dobrý odhad. 363 00:14:58,520 --> 00:14:59,430 Tom hovorí to isté. 364 00:14:59,430 --> 00:15:02,240 Akékoľvek iné odhady? 365 00:15:02,240 --> 00:15:05,260 >> Kto si myslí, že to bude robiť to isté? 366 00:15:05,260 --> 00:15:06,510 Kto si myslí, že to bude segfault? 367 00:15:06,510 --> 00:15:09,350 368 00:15:09,350 --> 00:15:10,230 To robí to isté. 369 00:15:10,230 --> 00:15:11,880 Prepáčte. 370 00:15:11,880 --> 00:15:13,860 >> Ale, samozrejme, sme dali v 1. a 2.. 371 00:15:13,860 --> 00:15:16,470 A to sú obaja platné, že jo? 372 00:15:16,470 --> 00:15:19,420 Poďme sa pozrieť, môžeme ísť na druhé miesto z poľa. 373 00:15:19,420 --> 00:15:24,010 Ale čo keď sme b záporné číslo? 374 00:15:24,010 --> 00:15:26,380 To je asi lepší odhad na niečo segfaulting. 375 00:15:26,380 --> 00:15:30,310 376 00:15:30,310 --> 00:15:32,260 Je to stále funguje. 377 00:15:32,260 --> 00:15:35,020 >> OK, to je teraz šialený. 378 00:15:35,020 --> 00:15:38,350 To je rovnako platné funkciu SUM. 379 00:15:38,350 --> 00:15:40,470 To robí presne rovnakú vec ako vrátiť a b. 380 00:15:40,470 --> 00:15:44,600 Môže mi niekto vysvetliť, prečo je to dobré súčet funkcie, alebo prečo to funguje? 381 00:15:44,600 --> 00:15:45,850 Čo sa tu deje? 382 00:15:45,850 --> 00:15:49,360 383 00:15:49,360 --> 00:15:55,750 Prečo to robiť presne rovnaký niečo ako naša stará funkcia sum? 384 00:15:55,750 --> 00:15:56,890 [? Akshar,?] 385 00:15:56,890 --> 00:15:58,155 čo sa deje? 386 00:15:58,155 --> 00:16:01,540 >> DIVÁKOV: Vzhľadom k tomu, keď máte to je adresa, na 387 00:16:01,540 --> 00:16:03,950 miesto v pamäti - 388 00:16:03,950 --> 00:16:07,910 a keď to urobíte ampersand, je ide do tejto pamäte adresu. 389 00:16:07,910 --> 00:16:13,610 A keď idete na b, si trochu pohybujúce sa kroky z tejto adresy pamäti, 390 00:16:13,610 --> 00:16:15,550 vraciate, že. 391 00:16:15,550 --> 00:16:20,083 Takže ste vlastne, v skutočnosti, Pridanie a b [nepočuteľné]. 392 00:16:20,083 --> 00:16:23,300 393 00:16:23,300 --> 00:16:26,222 Tam, kde sú štandardné operácie Na tomto návrate? 394 00:16:26,222 --> 00:16:27,683 Rovnako ako, kde zátvorky jeseň? 395 00:16:27,683 --> 00:16:30,610 Je návrat na adresu uvedenú na pred alebo po [nepočuteľné]? 396 00:16:30,610 --> 00:16:32,380 >> SPEAKER: Bude to index do b - 397 00:16:32,380 --> 00:16:34,430 alebo index do - a potom spiatočnú adresu. 398 00:16:34,430 --> 00:16:38,800 399 00:16:38,800 --> 00:16:41,340 OK, takže to všetci pochopili čo [? Akshar?] 400 00:16:41,340 --> 00:16:45,830 povedal a vysvetlil, prečo to funguje? 401 00:16:45,830 --> 00:16:49,430 Nechcel som, prvýkrát, keď niekto vysvetlil mi to. 402 00:16:49,430 --> 00:16:51,900 By niekto chcel obrázok to vysvetliť? 403 00:16:51,900 --> 00:16:55,320 Chystáme sa nakresliť obrázok s žiadne značky, to je skvelé. 404 00:16:55,320 --> 00:16:57,920 Našiel niektoré z nich. 405 00:16:57,920 --> 00:17:03,390 >> Takže máme celý rad, ktorý je séria krabíc. 406 00:17:03,390 --> 00:17:07,160 407 00:17:07,160 --> 00:17:13,710 Prvý z nich je index 0, index 1, 2, 3, 4, bodka, bodka, bodka. 408 00:17:13,710 --> 00:17:15,609 Typický poľa. 409 00:17:15,609 --> 00:17:19,540 A okrem toho, že indexy, všetci majú adresy pamäti. 410 00:17:19,540 --> 00:17:30,190 Takže poďme dať túto adresu pamäti 13, 14, 15, 16, 17, a tak ďalej. 411 00:17:30,190 --> 00:17:32,490 Všetci to tu tak ďaleko. 412 00:17:32,490 --> 00:17:35,810 >> Takže je adresa. 413 00:17:35,810 --> 00:17:38,850 Názov poľa, ukazovateľ je uložený tam. 414 00:17:38,850 --> 00:17:42,730 Je to ukazovateľ, že je to miesto v pamäti, na začiatok poľa. 415 00:17:42,730 --> 00:17:45,910 Takže ak to bolo pole, by sa hodnota 13. 416 00:17:45,910 --> 00:17:49,110 A, samozrejme, môžeme dať všetky hodnoty chceme. 417 00:17:49,110 --> 00:17:52,450 Char hviezda, môžeme dať akýkoľvek adresa pamäti chceme. 418 00:17:52,450 --> 00:17:55,940 Môžeme dať 0, môžeme dať Negatívny 1 - 1 negatívny neexistuje, 419 00:17:55,940 --> 00:17:58,820 tak to je asi problematické, ale ste videli, že to ešte fungovalo. 420 00:17:58,820 --> 00:18:03,070 Takže môžeme dať ľubovoľný počet chceme, každá adresa pamäti chceme. 421 00:18:03,070 --> 00:18:08,720 >> Potom, int b hovorí, OK, prejdite toto číslo z krokov do poľa. 422 00:18:08,720 --> 00:18:13,150 Takže v prípade, b sa rovná 2, a sa rovná 13, Sme na adresu pamäti 13. 423 00:18:13,150 --> 00:18:17,330 A ideme dva kroky, a preto sme tu. 424 00:18:17,330 --> 00:18:21,150 A ampersand znamená návrat adresu tohto miesta. 425 00:18:21,150 --> 00:18:23,990 A adresa, samozrejme, 15. 426 00:18:23,990 --> 00:18:28,710 Tak sme si 13 plus 2, alebo a b, čo je 15. 427 00:18:28,710 --> 00:18:29,590 >> Otázkou je, aj keď - 428 00:18:29,590 --> 00:18:30,250 Je mi to ľúto. 429 00:18:30,250 --> 00:18:34,324 Znamená to, že objasnenie veci, prečo to funguje? 430 00:18:34,324 --> 00:18:36,300 >> DIVÁKOV: Prečo by to fungovať bude - 431 00:18:36,300 --> 00:18:38,770 takže môžete mať celú radu a ísť na negatívny index? 432 00:18:38,770 --> 00:18:39,050 >> SPEAKER: Správne. 433 00:18:39,050 --> 00:18:40,870 Takže sme urobili záporné čísla, tak to je - 434 00:18:40,870 --> 00:18:42,770 to zmysel aj keď, prvý, [? Avi,?] 435 00:18:42,770 --> 00:18:43,120 pre vás? 436 00:18:43,120 --> 00:18:48,840 >> DIVÁKOV: Jo, ja som len [Nepočuteľné], ale - 437 00:18:48,840 --> 00:18:50,440 >> SPEAKER: Jo, to by sa vrátiť 15. 438 00:18:50,440 --> 00:18:53,523 Ak bol 13, a b je 2, To by sa vrátiť 15. 439 00:18:53,523 --> 00:18:58,160 >> DIVÁKOV: Tak indexovanie nula nie je sa stal problém, nie? 440 00:18:58,160 --> 00:19:00,160 Vzhľadom k tomu, že ste v pohybe od 0. 441 00:19:00,160 --> 00:19:00,470 >> SPEAKER: Správne. 442 00:19:00,470 --> 00:19:05,000 Takže ste v pohybe - takže ak b je 0, by ste sa pohybovať kdekoľvek. 443 00:19:05,000 --> 00:19:06,330 A vy by ste sa práve vrátili adresu - 444 00:19:06,330 --> 00:19:10,830 ak b je 0, to je v podstate vracia, aby adresu. 445 00:19:10,830 --> 00:19:13,960 Odovzdávanie v char hviezdy A a vrátenie Adresa je len vracia, 446 00:19:13,960 --> 00:19:15,860 v podstate. 447 00:19:15,860 --> 00:19:18,280 >> OK, otázkou je, prečo záporné čísla fungujú? 448 00:19:18,280 --> 00:19:21,670 A to je naozaj super vec, o to, pretože to by malo segfault. 449 00:19:21,670 --> 00:19:25,110 A to by segfault keby sme urobil niečo také. 450 00:19:25,110 --> 00:19:28,050 451 00:19:28,050 --> 00:19:29,300 Povedzme, int. 452 00:19:29,300 --> 00:19:34,390 453 00:19:34,390 --> 00:19:39,810 Takže tento kód vyzerá rovnako a by sa mali správať rovnako. 454 00:19:39,810 --> 00:19:44,550 V podstate, x je premenná odpadky, a tak by to malo správať rovnako. 455 00:19:44,550 --> 00:19:46,370 >> Poďme urobiť toto - 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 zapojení do hviezdy. 459 00:19:56,040 --> 00:19:59,160 460 00:19:59,160 --> 00:20:02,733 OK, sme už dostať chyby tu, , Pretože to už bude hnevať 461 00:20:02,733 --> 00:20:04,610 na mňa, pretože už vie, čo príde. 462 00:20:04,610 --> 00:20:07,060 Najmä druhý. 463 00:20:07,060 --> 00:20:09,800 Adresa naukladaných pamäti spojené s lokálne premenné. 464 00:20:09,800 --> 00:20:14,220 >> V podstate, nehodlám kompilovať to, a potom idem vrátiť robiť 465 00:20:14,220 --> 00:20:14,920 to, čo sme práve urobili. 466 00:20:14,920 --> 00:20:19,130 Ale pretože sme vlastne nikdy prístupu, čo je v pamäti 467 00:20:19,130 --> 00:20:21,930 umiestnenie, to nebude segfault. 468 00:20:21,930 --> 00:20:26,450 Sme vlastne nikdy pri pohľade na to, čo je V druhom boxe alebo to, čo je v každej krabice 469 00:20:26,450 --> 00:20:28,340 tohto poľa. 470 00:20:28,340 --> 00:20:30,980 Sme len povedal, tu je adresa o vec hľadáme a 471 00:20:30,980 --> 00:20:32,410 vrátiť túto adresu. 472 00:20:32,410 --> 00:20:35,700 Sme vlastne nikdy ísť do pole, aby sa na tomto mieste. 473 00:20:35,700 --> 00:20:39,140 A pretože sme sa nikdy nedotýkajte pamäti, nemáme dostať do problémov. 474 00:20:39,140 --> 00:20:40,760 Nemáme si segfault. 475 00:20:40,760 --> 00:20:46,225 >> Ak by sme sa snažili znova, dotknite sa, že pamäť, dotknite sa to, čo bolo na a alebo b - 476 00:20:46,225 --> 00:20:49,940 alebo držiak b, a za predpokladu, že bola 0 a - 477 00:20:49,940 --> 00:20:53,040 ak bola 0, i, že by bolo celkom zlé, pretože nemôžeme ísť 478 00:20:53,040 --> 00:20:54,090 so všetkými tam ceste. 479 00:20:54,090 --> 00:20:58,250 Je-li A a B sú oba 0, a my sme sa snažili dotknúť sa, čo tam bolo, potom by sme 480 00:20:58,250 --> 00:20:59,110 dostať do problémov. 481 00:20:59,110 --> 00:21:02,160 Ale ak sa nedotýkajte, čo je tam, jednoducho spiatočnú adresu, je 482 00:21:02,160 --> 00:21:08,300 v skutočnosti nebude segfault, pretože To vám umožní vykonávať tieto operácie. 483 00:21:08,300 --> 00:21:11,920 To dostane len na teba naštvaná, a dostane Super hnevať, keď sa pokúsite a dotknúť sa 484 00:21:11,920 --> 00:21:15,740 skutočné pamäte a vráti to, čo je v tejto pamäti. 485 00:21:15,740 --> 00:21:17,690 >> Má to zmysel? 486 00:21:17,690 --> 00:21:24,820 To je jednoducho šialené a časť C. Takže, máme jeden z nich. 487 00:21:24,820 --> 00:21:27,760 488 00:21:27,760 --> 00:21:29,700 >> Kto si myslí, že je to v pohode? 489 00:21:29,700 --> 00:21:30,280 Stále viac ľudí. 490 00:21:30,280 --> 00:21:31,070 To je dobre. 491 00:21:31,070 --> 00:21:34,860 OK, toto je naša posledná. 492 00:21:34,860 --> 00:21:37,314 A rád by som, aby ste mi povedať, či alebo nie si myslíte, že toto sa deje 493 00:21:37,314 --> 00:21:38,564 robiť presne rovnaký vec. 494 00:21:38,564 --> 00:22:06,050 495 00:22:06,050 --> 00:22:07,390 >> Som to napísal niekam. 496 00:22:07,390 --> 00:22:08,640 Nebudem ich zapamätanie. 497 00:22:08,640 --> 00:22:33,350 498 00:22:33,350 --> 00:22:42,900 >> Poďme sa pozrieť, 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 Tak to je pole, teraz, nie je funkcia. 500 00:22:46,670 --> 00:22:49,640 A je to pole, pretože máme námestí držiaky, nie zložené zátvorky. 501 00:22:49,640 --> 00:22:52,360 A je to pole, aký typ? 502 00:22:52,360 --> 00:22:55,540 503 00:22:55,540 --> 00:22:56,862 Každý, hmm? 504 00:22:56,862 --> 00:22:57,694 >> DIVÁKOV: Ich hexadecimálne čísla? 505 00:22:57,694 --> 00:22:59,650 >> SPEAKER: Ale čo je to typ C? 506 00:22:59,650 --> 00:23:00,710 Tí všetci majú hexadecimálne čísla. 507 00:23:00,710 --> 00:23:01,960 Čo je to typ C? 508 00:23:01,960 --> 00:23:04,730 509 00:23:04,730 --> 00:23:05,480 To vám povie. 510 00:23:05,480 --> 00:23:07,350 >> DIVÁKOV: Je to nepodpísané znakov. 511 00:23:07,350 --> 00:23:09,170 >> SPEAKER: vpravo, bez znamienka znakov. 512 00:23:09,170 --> 00:23:13,050 A dve hexadecimálne čísla je jeden bajt. 513 00:23:13,050 --> 00:23:18,540 To sú 1, 2, 3, 4, 5, 6, 7, 8, 9 bytov. 514 00:23:18,540 --> 00:23:21,360 Je to rad z 9 bytov. 515 00:23:21,360 --> 00:23:25,530 >> OK, ste si pravdepodobne už viete, odpoveď na túto otázku. 516 00:23:25,530 --> 00:23:29,840 Ale, čo si myslíte, že bude stane, keď som spustiť tento? 517 00:23:29,840 --> 00:23:34,110 Hovorím znova, v mysum.c, Čakám funkciu 518 00:23:34,110 --> 00:23:36,280 že trvá dve celé čísla. 519 00:23:36,280 --> 00:23:40,265 A ja som namiesto toho povedal táto suma je pole znakov. 520 00:23:40,265 --> 00:23:42,780 521 00:23:42,780 --> 00:23:48,070 Čo sa stane, keď I spustite. / Mysu a robiť? 522 00:23:48,070 --> 00:23:53,230 >> No, po prvé, väčšina z vás bude pravdepodobne Súhlasíte s tým, že make - ach nie, robím si srandu. 523 00:23:53,230 --> 00:23:54,746 Čo som urobil zle? 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 by malo byť zložené zátvorky. 527 00:24:01,160 --> 00:24:02,790 To je, ako inicializovať pole. 528 00:24:02,790 --> 00:24:04,040 Moja chyba. 529 00:24:04,040 --> 00:24:07,530 530 00:24:07,530 --> 00:24:11,670 >> Takže sme už videli skôr, než že typy sú abstrakcie C-úrovni, a to 531 00:24:11,670 --> 00:24:12,610 Úroveň počítačovej abstrakcie. 532 00:24:12,610 --> 00:24:16,360 Takže väčšina z vás pravdepodobne očakáva, že sa robiť, alebo za predpokladu, že by bolo. 533 00:24:16,360 --> 00:24:18,680 Ale čo keď som bežať. / Myse? 534 00:24:18,680 --> 00:24:19,930 Čo sa bude diať? 535 00:24:19,930 --> 00:24:21,790 536 00:24:21,790 --> 00:24:23,422 Akékoľvek odhady? 537 00:24:23,422 --> 00:24:25,270 >> DIVÁKOV: Bude to vytlačiť slovo. 538 00:24:25,270 --> 00:24:26,310 >> SPEAKER: Bude to vytlačiť slovo. 539 00:24:26,310 --> 00:24:29,335 Aké slovo? 540 00:24:29,335 --> 00:24:32,200 >> DIVÁKOV: [nepočuteľné]. 541 00:24:32,200 --> 00:24:33,240 >> SPEAKER: Akékoľvek iné odhady? 542 00:24:33,240 --> 00:24:34,000 OK, vytlačiť frázu. 543 00:24:34,000 --> 00:24:35,130 Môžete mať akýkoľvek výraz. 544 00:24:35,130 --> 00:24:36,240 To bude vaša strana. 545 00:24:36,240 --> 00:24:38,480 Každý, kto má iný hádať? 546 00:24:38,480 --> 00:24:39,730 Anna, aký je váš odhad? 547 00:24:39,730 --> 00:24:42,675 548 00:24:42,675 --> 00:24:44,615 >> DIVÁKOV: Bude vytlačiť - 549 00:24:44,615 --> 00:24:47,525 550 00:24:47,525 --> 00:24:49,480 dva listy, alebo [nepočuteľný] jedno písmeno. 551 00:24:49,480 --> 00:24:51,460 >> SPEAKER: Jeden list. 552 00:24:51,460 --> 00:24:53,260 >> DIVÁKOV: Môžem počítať ako mnoho [nepočuteľný]? 553 00:24:53,260 --> 00:24:55,426 >> SPEAKER: Nine. 554 00:24:55,426 --> 00:24:56,640 No, budem sa ho spustiť. 555 00:24:56,640 --> 00:24:58,650 To robí presne rovnaký vec. 556 00:24:58,650 --> 00:25:00,190 Dodáva dve čísla dohromady. 557 00:25:00,190 --> 00:25:02,740 Dobre, poďme prejsť dva argumenty. 558 00:25:02,740 --> 00:25:03,710 Neznamená to však trvať argumenty. 559 00:25:03,710 --> 00:25:06,080 Takže neviem, kde by to mohlo možno si tieto argumenty. 560 00:25:06,080 --> 00:25:07,710 Ale poďme sa prejsť na 100 a 0. 561 00:25:07,710 --> 00:25:09,200 A dodáva 100 a 0. 562 00:25:09,200 --> 00:25:10,220 To je šialené. 563 00:25:10,220 --> 00:25:12,280 Myslím, že áno. 564 00:25:12,280 --> 00:25:14,480 >> Negatívne 4, ktorý funguje taky. 565 00:25:14,480 --> 00:25:15,650 Môžete robiť, čo chcete. 566 00:25:15,650 --> 00:25:17,920 To je rovnako platný funkcie sum. 567 00:25:17,920 --> 00:25:19,640 To je funkcia sum. 568 00:25:19,640 --> 00:25:21,510 Ale nie, vy hovoríte, že je to pole bajtov. 569 00:25:21,510 --> 00:25:23,570 Takže, čo sa to tu deje? 570 00:25:23,570 --> 00:25:27,240 >> Takže, ešte raz, vráťme sa k tejto myšlienke že sme si povedali na začiatku. 571 00:25:27,240 --> 00:25:32,050 Idete z kódu C-úrovni, až po montáž jazyk, do jednotiek a núl. 572 00:25:32,050 --> 00:25:33,050 To je hexadecimálne. 573 00:25:33,050 --> 00:25:35,780 Ale to je naozaj len Veľa jedničiek a núl. 574 00:25:35,780 --> 00:25:39,230 To je 72 jednotky a nuly, nie? 575 00:25:39,230 --> 00:25:40,550 72 z nich a nuly. 576 00:25:40,550 --> 00:25:42,160 9 bajtov. 577 00:25:42,160 --> 00:25:43,740 Každý bajt je 8 bitov. 578 00:25:43,740 --> 00:25:44,760 Každý bit je jedna alebo nula. 579 00:25:44,760 --> 00:25:45,920 Takže 72 z nich alebo nuly. 580 00:25:45,920 --> 00:25:48,780 Ja som práve napísal je takto - skôr než písať to ako veľa 581 00:25:48,780 --> 00:25:49,730 jednotky a nuly. 582 00:25:49,730 --> 00:25:53,560 >> Ale to pôjde z C-úrovne jazyk, až po montáž 583 00:25:53,560 --> 00:25:54,620 jazyka, kódu. 584 00:25:54,620 --> 00:25:59,020 A to sa bude tlačiť v kóde, Niekde v týchto 72 jednotky a nuly 585 00:25:59,020 --> 00:26:00,910 že som napísal tú som. 586 00:26:00,910 --> 00:26:03,610 Takže niekde v tom, že - 587 00:26:03,610 --> 00:26:04,850 poďme tu - 588 00:26:04,850 --> 00:26:11,240 niekde v mysu, program, tam sú tieto 72 jednotky a nuly, ktoré som 589 00:26:11,240 --> 00:26:14,930 napísal a povedal ju písať. 590 00:26:14,930 --> 00:26:19,331 >> Teraz, žiadne odhady pre to, čo ty, 72 z nich a nuly znamenajú? 591 00:26:19,331 --> 00:26:21,240 >> DIVÁKOV: Pravdepodobne rovnaký vec, ako vrátiť a navyše b. 592 00:26:21,240 --> 00:26:22,890 >> SPEAKER: Pravdepodobne rovnaký vec, ako vrátiť a navyše b. 593 00:26:22,890 --> 00:26:23,730 Poďme overiť, že. 594 00:26:23,730 --> 00:26:25,210 Poďme zistiť, ako som to urobil. 595 00:26:25,210 --> 00:26:31,840 >> Takže ak ste sa vrátiť sem, poviem vám Na spustenie tohto príkazu, objdump-S 596 00:26:31,840 --> 00:26:34,290 sumfunction.o. 597 00:26:34,290 --> 00:26:36,230 Poďme spustite ho. objdump - 598 00:26:36,230 --> 00:26:37,990 obj, dump. 599 00:26:37,990 --> 00:26:39,840 V podstate mi to môže dať čo chcem vidieť. 600 00:26:39,840 --> 00:26:40,840 To mi môže dať assembleri. 601 00:26:40,840 --> 00:26:42,730 To mi môže dať jednotky a nuly. 602 00:26:42,730 --> 00:26:43,840 To má veľa príznakov. 603 00:26:43,840 --> 00:26:45,860 To je jeden ideme použiť pre teraz. 604 00:26:45,860 --> 00:26:46,980 Dot - 605 00:26:46,980 --> 00:26:48,810 ako vidíte na snímkach - 606 00:26:48,810 --> 00:26:53,840 pomlčka kapitál S hovorí, intersperse, Zdrojový kód - 607 00:26:53,840 --> 00:26:58,410 tento riadok je od C - s montážou kód a s jedničiek a núl. 608 00:26:58,410 --> 00:27:00,350 A ideme na beh to na sumfunction.o. 609 00:27:00,350 --> 00:27:01,410 Vzhľadom k tomu, že to bude lepšie vidieť. 610 00:27:01,410 --> 00:27:02,670 Opäť - hmm? 611 00:27:02,670 --> 00:27:04,700 >> DIVÁKOV: hláskoval si to zle. 612 00:27:04,700 --> 00:27:05,930 >> SPEAKER: Ale ja som vlastne deje aby si ju prečistil za sekundu. 613 00:27:05,930 --> 00:27:09,160 Ja som prvý otvorím len sumfuntion.o. 614 00:27:09,160 --> 00:27:11,170 >> DIVÁKOV: hláskoval Môžete ho zlý prvýkrát. 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 že je ťažké slovo, hoci. 619 00:27:16,680 --> 00:27:19,050 To by ste sa divila. 620 00:27:19,050 --> 00:27:21,560 OK, takže to je sumfunction.o. 621 00:27:21,560 --> 00:27:24,494 622 00:27:24,494 --> 00:27:26,220 Nemohol som ani povedať. 623 00:27:26,220 --> 00:27:30,250 Je tu veľa núl, jasne veľa núl, a tam je nejaký iný 624 00:27:30,250 --> 00:27:31,930 veci, to nie je nuly. 625 00:27:31,930 --> 00:27:33,220 Ale väčšinou nuly. 626 00:27:33,220 --> 00:27:35,120 Vyzerá to, že niektoré z nich. 627 00:27:35,120 --> 00:27:36,810 Tak jasne, je to ťažké čítať. 628 00:27:36,810 --> 00:27:39,320 To je binárny jazyk. 629 00:27:39,320 --> 00:27:40,710 >> Poďme teraz otvoriť - 630 00:27:40,710 --> 00:27:50,190 631 00:27:50,190 --> 00:27:52,350 čo? 632 00:27:52,350 --> 00:27:53,600 Čo robím zle? 633 00:27:53,600 --> 00:27:56,955 634 00:27:56,955 --> 00:27:58,434 Už som to píše správne? 635 00:27:58,434 --> 00:28:09,865 636 00:28:09,865 --> 00:28:11,120 OK, je to trápne. 637 00:28:11,120 --> 00:28:37,560 638 00:28:37,560 --> 00:28:40,158 Musím jednu sekundu prísť z toho, čo robím zle. 639 00:28:40,158 --> 00:28:46,030 640 00:28:46,030 --> 00:28:49,310 To je jedna chyba. 641 00:28:49,310 --> 00:28:50,560 To je divné. 642 00:28:50,560 --> 00:28:58,080 643 00:28:58,080 --> 00:29:01,800 Oh, to je dôvod, prečo. 644 00:29:01,800 --> 00:29:09,880 >> Chystám sa vrátiť k našej počiatočnej jeden, takže sa môžeme pozrieť na 645 00:29:09,880 --> 00:29:10,560 strojového kódu to. 646 00:29:10,560 --> 00:29:13,390 Vzhľadom k tomu, že to naozaj bude byť niečo, keď sme len dať 647 00:29:13,390 --> 00:29:14,640 ty a nuly v. 648 00:29:14,640 --> 00:29:29,000 649 00:29:29,000 --> 00:29:30,200 Tam ideme. 650 00:29:30,200 --> 00:29:32,425 OK, takže každý môže vidieť. 651 00:29:32,425 --> 00:29:38,130 Táto funkcia, ako som už povedal, uhasiť linky C - 652 00:29:38,130 --> 00:29:39,060 riadky kódu zdroj - 653 00:29:39,060 --> 00:29:41,000 s niektorými montážnymi pokynmi. 654 00:29:41,000 --> 00:29:42,760 >> Tu je náš zdrojový kód riadok. 655 00:29:42,760 --> 00:29:44,910 Tu je jeden, tu je ďalší. 656 00:29:44,910 --> 00:29:46,540 Tu je návod montáže. 657 00:29:46,540 --> 00:29:47,820 To je to, ako vyzerajú. 658 00:29:47,820 --> 00:29:49,010 Montážny návod - 659 00:29:49,010 --> 00:29:51,530 sa môžete dozvedieť viac z nich, ak budete mať iných tried SK, ale sú 660 00:29:51,530 --> 00:29:53,500 všeobecne inštrukcie. 661 00:29:53,500 --> 00:29:57,940 A potom zdroj a cieľ. 662 00:29:57,940 --> 00:30:02,740 >> A potom tu je binárny kód , Ktorá zodpovedá tejto zostave 663 00:30:02,740 --> 00:30:04,940 inštrukcie. 664 00:30:04,940 --> 00:30:09,760 Takže ako vidíte, táto funkcia sum, Na konci dňa, je tri 665 00:30:09,760 --> 00:30:10,950 návod na montáž. 666 00:30:10,950 --> 00:30:12,870 Iba tri. 667 00:30:12,870 --> 00:30:14,180 Jeden mov - 668 00:30:14,180 --> 00:30:16,740 Tento m-o-v znamená ťahu. 669 00:30:16,740 --> 00:30:17,780 Pridať stojany na Pridať. 670 00:30:17,780 --> 00:30:20,440 A r-e-t znamená návrat. 671 00:30:20,440 --> 00:30:22,540 Takže jeden mov, jeden doplnok, jedna spiatočná. 672 00:30:22,540 --> 00:30:27,970 A toto, tu, sú nuly a tie, ktoré zodpovedajú tomuto kódu. 673 00:30:27,970 --> 00:30:31,100 >> Takže tie nuly a tie, ak ste viem, ty, stačí dať 674 00:30:31,100 --> 00:30:32,140 tie rovno dovnútra 675 00:30:32,140 --> 00:30:34,130 A potom to urobím To isté presne vec. 676 00:30:34,130 --> 00:30:37,260 Vzhľadom k tomu,, na konci dňa, všetko ste prevedenie je dlhá séria 677 00:30:37,260 --> 00:30:38,480 nuly a ty. 678 00:30:38,480 --> 00:30:40,700 A to je to, čo skutočne je váš kód. 679 00:30:40,700 --> 00:30:41,770 >> A dôvod - 680 00:30:41,770 --> 00:30:43,680 Poďme sa pozrieť na jednu vec. 681 00:30:43,680 --> 00:30:45,440 Už som si Makefile otvorená? 682 00:30:45,440 --> 00:30:48,510 Takže keď sme sa vrátili do pomlčka nula, nula sem - 683 00:30:48,510 --> 00:30:52,220 684 00:30:52,220 --> 00:30:57,300 Ospravedlňujem sa, kapitál o kapitál o nulu, nie je nula, nula. 685 00:30:57,300 --> 00:31:01,810 A my to robiť, by to stále fungujú rovnako. 686 00:31:01,810 --> 00:31:05,420 Ale teraz, zistíte, že existujú oveľa viac montážny návod. 687 00:31:05,420 --> 00:31:09,090 To je preto, že opäť, spýtal som sa kompilátor nemôže robiť žiadne optimalizácia. 688 00:31:09,090 --> 00:31:12,800 >> Takže som mohol ešte vziať všetky tieto nuly a tie, a hádzať ich do, 689 00:31:12,800 --> 00:31:13,390 a to by mohlo fungovať. 690 00:31:13,390 --> 00:31:15,850 Len som urobil, že optimalizácia, pretože je to trochu jednoduchšie, potom, 691 00:31:15,850 --> 00:31:17,310 napísať, že pole. 692 00:31:17,310 --> 00:31:19,730 Ale to by fungovať rovnako dobre. 693 00:31:19,730 --> 00:31:24,460 >> OK, ideme urobiť jednu poslednú vec, pretože si myslím, je najlepšia časť. 694 00:31:24,460 --> 00:31:27,410 Aj keď každý je jasne už fúkané a nemý. 695 00:31:27,410 --> 00:31:30,520 696 00:31:30,520 --> 00:31:31,670 Naša myseľ je spálená. 697 00:31:31,670 --> 00:31:32,920 [Nepočuteľný] 698 00:31:32,920 --> 00:31:47,580 699 00:31:47,580 --> 00:31:51,520 >> Tak, to je z inej triedy CS, čo je veľmi zaujímavé, 700 00:31:51,520 --> 00:31:52,970 že som sa - 701 00:31:52,970 --> 00:31:54,140 CS61. 702 00:31:54,140 --> 00:31:55,910 Vrelo odporúčam urobiť si ho. 703 00:31:55,910 --> 00:31:58,990 Ale v pohode časť o tejto skutočnosti, že veci sú len nuly a tie, 704 00:31:58,990 --> 00:32:01,270 je, že všetko, čo je nuly a ty. 705 00:32:01,270 --> 00:32:05,330 >> Takže si môžete vziať súbor, ktorý má správne nuly a tie, ktoré chcete 706 00:32:05,330 --> 00:32:10,390 niekde v ňom, a použiť túto časť nuly a tie ako funkcia sum. 707 00:32:10,390 --> 00:32:11,480 >> Čo tým chcem povedať, že? 708 00:32:11,480 --> 00:32:15,755 Myslím si môžete vziať obrazový súbor, ktorý má správnu radu núl a 709 00:32:15,755 --> 00:32:17,120 tie, ktoré tlačia niečo sa na obrázok. 710 00:32:17,120 --> 00:32:20,070 A jeden program môže interpretovať je obrázok, ale môžete interpretovať ho, ak 711 00:32:20,070 --> 00:32:22,040 Ak ako funkciu SUM. 712 00:32:22,040 --> 00:32:27,010 >> Takže ak by sme chceli otvoriť, pre Napríklad tento obrázok. 713 00:32:27,010 --> 00:32:37,440 Poďme, Hello Kitty. 714 00:32:37,440 --> 00:32:38,810 Úžasný malý obrázok. 715 00:32:38,810 --> 00:32:42,260 V tu je to, že reťazec núl a ty. 716 00:32:42,260 --> 00:32:45,500 Tieto 72 núl a tie existujú v tomto snímku. 717 00:32:45,500 --> 00:32:47,695 >> Takže čo sa dá robiť, potom je napísať - 718 00:32:47,695 --> 00:32:50,510 719 00:32:50,510 --> 00:32:51,760 Musím si spomenúť, kde sú. 720 00:32:51,760 --> 00:32:54,550 721 00:32:54,550 --> 00:32:55,720 Nájdem, že v sekunde. 722 00:32:55,720 --> 00:32:57,840 Ale my - 723 00:32:57,840 --> 00:32:59,440 dovoľte mi, aby som zistil, kde sú. 724 00:32:59,440 --> 00:33:00,020 Jeden sec. 725 00:33:00,020 --> 00:33:01,270 Poďme urobiť - 726 00:33:01,270 --> 00:33:05,800 727 00:33:05,800 --> 00:33:07,240 >> DIVÁKOV: [nepočuteľné]. 728 00:33:07,240 --> 00:33:08,490 >> SPEAKER: Vďaka. 729 00:33:08,490 --> 00:33:24,240 730 00:33:24,240 --> 00:33:28,740 Takže ak by sme spustiť tento program, ktorý namiesto toho prečíta v súbore, potom to ide 731 00:33:28,740 --> 00:33:33,160 tohto indexu v súbore. 732 00:33:33,160 --> 00:33:35,500 A potom znova, rovnako ako mysu, vezme dve čísla. 733 00:33:35,500 --> 00:33:41,410 Môžeme pridať čísla presne rovnaké ako sme robili predtým, čo vedie k 734 00:33:41,410 --> 00:33:44,850 ukázať vám, ako to, že na konci dňa, všetky tieto veci sú 735 00:33:44,850 --> 00:33:45,350 nuly a ty. 736 00:33:45,350 --> 00:33:48,170 A to je to, ako si vybrať je interpretovať. 737 00:33:48,170 --> 00:33:50,770 >> A ak ste skutočne vyzerať na tomto obrázku - 738 00:33:50,770 --> 00:33:52,930 poďme priblížiť trochu. 739 00:33:52,930 --> 00:33:53,720 Môže to všetci vidieť? 740 00:33:53,720 --> 00:33:57,570 Všimnete si tu, je tu nejaký divný rozmazaniu. 741 00:33:57,570 --> 00:34:00,130 742 00:34:00,130 --> 00:34:02,290 Poďme - to je pôvodný obrázok. 743 00:34:02,290 --> 00:34:04,540 Všimnete si, tu nie je šmuha. 744 00:34:04,540 --> 00:34:08,420 To je kód pre funkciu sum, je to trochu šmuha práve tam. 745 00:34:08,420 --> 00:34:13,449 >> A skutočne, opäť, ak ste sa dozvedieť viac o tom, budete si uvedomiť, že tento 746 00:34:13,449 --> 00:34:18,270 Hello Kitty, ktorý má ešte väčší šmuha, má kód, ktorý môže prevziať 747 00:34:18,270 --> 00:34:21,800 počítač, ak to nie je chránený primerane. 748 00:34:21,800 --> 00:34:23,920 Takže môžete v skutočnosti spustiť to. 749 00:34:23,920 --> 00:34:25,380 Nebudem ho spustiť hneď. 750 00:34:25,380 --> 00:34:30,600 Ale môžete spustiť tento Hello Kitty obraz, a to môže 751 00:34:30,600 --> 00:34:32,429 prevziať počítači. 752 00:34:32,429 --> 00:34:35,159 >> Tak to je všetko pre demo. 753 00:34:35,159 --> 00:34:38,560 Má niekto nejaké otázky, komentáre, obavy? 754 00:34:38,560 --> 00:34:39,515 Myslím, že toto je fascinujúce. 755 00:34:39,515 --> 00:34:41,500 To ma inšpirovalo dozvedieť sa viac. 756 00:34:41,500 --> 00:34:44,980 Vrelo odporúčam, ak máte záujem vôbec na SK, hovor so mnou. 757 00:34:44,980 --> 00:34:50,250 Aj keď som si a sociálnych štúdií Koncentrátor, som CS, sekundárne, tak 758 00:34:50,250 --> 00:34:52,340 Stále viem, trochu. 759 00:34:52,340 --> 00:34:53,810 Ale ja určite viem, čo triedy, mali by ste vziať. 760 00:34:53,810 --> 00:34:57,940 Myslím, že je to naozaj zaujímavé, a vyzývam vás, samozrejme, na 761 00:34:57,940 --> 00:35:00,330 dozvedieť sa viac, ak máte záujem. 762 00:35:00,330 --> 00:35:02,090 >> OK, mám jednu poslednú vec. 763 00:35:02,090 --> 00:35:05,530 764 00:35:05,530 --> 00:35:05,870 Prepáčte. 765 00:35:05,870 --> 00:35:06,460 Akékoľvek otázky? 766 00:35:06,460 --> 00:35:10,010 Nechcel som pauzu čakať, či niekto mal nejaké otázky o tom. 767 00:35:10,010 --> 00:35:13,220 768 00:35:13,220 --> 00:35:16,900 >> Je niekto bude Koncentrátor SK? 769 00:35:16,900 --> 00:35:18,580 Alebo o tom premýšľať? 770 00:35:18,580 --> 00:35:20,730 Jedna, dve, tri, štyri. 771 00:35:20,730 --> 00:35:21,620 One - iba jeden. 772 00:35:21,620 --> 00:35:24,680 Anna to je len ruka, ktorá je zdvihol autoritatívne. 773 00:35:24,680 --> 00:35:27,640 774 00:35:27,640 --> 00:35:29,390 OK, to je v pohode. 775 00:35:29,390 --> 00:35:30,110 Assam, čo budeš robiť? 776 00:35:30,110 --> 00:35:33,220 >> DIVÁKOV: [nepočuteľné]. 777 00:35:33,220 --> 00:35:33,910 >> SPEAKER: Constantine? 778 00:35:33,910 --> 00:35:34,990 >> DIVÁKOV: Fyzika. 779 00:35:34,990 --> 00:35:36,720 >> SPEAKER: Páni, to bolo rýchle. 780 00:35:36,720 --> 00:35:40,770 Vy ste mali zlú skúsenosť v CS50? 781 00:35:40,770 --> 00:35:42,015 [Nepočuteľné], čo budeš robiť? 782 00:35:42,015 --> 00:35:42,980 >> DIVÁKOV: Nemám tušenie. 783 00:35:42,980 --> 00:35:43,924 >> SPEAKER: Curt? 784 00:35:43,924 --> 00:35:45,900 >> DIVÁKOV: Econ alebo CS. 785 00:35:45,900 --> 00:35:46,910 >> SPEAKER: Econ alebo CS. 786 00:35:46,910 --> 00:35:47,840 Tom? 787 00:35:47,840 --> 00:35:48,385 >> DIVÁKOV: Robím 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 Čo si zač? 791 00:35:51,000 --> 00:35:51,310 >> DIVÁKOV: Me? 792 00:35:51,310 --> 00:35:51,750 >> SPEAKER: Jo. 793 00:35:51,750 --> 00:35:52,190 >> DIVÁKOV: Stat. 794 00:35:52,190 --> 00:35:52,520 >> SPEAKER: Stat. 795 00:35:52,520 --> 00:35:53,500 Ach, tu si. 796 00:35:53,500 --> 00:35:55,200 Tom, hovoriť s Alden. 797 00:35:55,200 --> 00:35:56,932 Emily, čo ste? 798 00:35:56,932 --> 00:35:57,396 >> DIVÁKOV: Biomedicínske - 799 00:35:57,396 --> 00:36:00,178 >> SPEAKER: Ste v tejto sekcii? 800 00:36:00,178 --> 00:36:03,040 >> Divákov: Nie 801 00:36:03,040 --> 00:36:04,530 >> SPEAKER: OK, to je Emily. 802 00:36:04,530 --> 00:36:05,670 Je to môj priateľ. 803 00:36:05,670 --> 00:36:10,080 Samozrejme, že nie, že dobro priateľov pretože ona mi dáva zabrať. 804 00:36:10,080 --> 00:36:13,223 Tie by mohli byť krajšie sa mi pred každého, môj študent - 805 00:36:13,223 --> 00:36:14,580 >> DIVÁKOV: Robím svoju Q sprievodca. 806 00:36:14,580 --> 00:36:14,870 >> SPEAKER: Naozaj? 807 00:36:14,870 --> 00:36:15,510 Uh oh. 808 00:36:15,510 --> 00:36:17,224 OK, ty si úžasná. 809 00:36:17,224 --> 00:36:19,380 Milujem ťa tak moc. 810 00:36:19,380 --> 00:36:20,600 Ach jo. 811 00:36:20,600 --> 00:36:28,320 >> Každopádne som včera v noci, ako všetko - 812 00:36:28,320 --> 00:36:32,220 Som si istý, všetci sa zdá naozaj zdôraznil práve teraz. 813 00:36:32,220 --> 00:36:35,970 Neviem, je nováčik - sú vy ste v strese? 814 00:36:35,970 --> 00:36:36,855 Mám pocit, zdôraznil. 815 00:36:36,855 --> 00:36:37,980 Bolo to ako, idete domov na Deň vďakyvzdania. 816 00:36:37,980 --> 00:36:40,660 Si rád, budem robiť všetky tieto veci. 817 00:36:40,660 --> 00:36:41,530 >> DIVÁKOV: Je to tak odlišné. 818 00:36:41,530 --> 00:36:42,560 >> SPEAKER: Jo, a vrátiš. 819 00:36:42,560 --> 00:36:45,290 Jeff, nemáte pocit, že spôsob, akým? 820 00:36:45,290 --> 00:36:46,610 >> DIVÁKOV: Len som si myslel, Ja by som to trochu. 821 00:36:46,610 --> 00:36:48,660 >> SPEAKER: OK, dobre. 822 00:36:48,660 --> 00:36:51,650 Tak som sa vrátil, a nemám nič neurobil. 823 00:36:51,650 --> 00:36:53,260 A to všetko veľmi stresujúce. 824 00:36:53,260 --> 00:36:55,640 A ja som obavy, skutočne týka, o tom, či som alebo nie som 825 00:36:55,640 --> 00:36:57,380 bude až do konca všetko, čo musím. 826 00:36:57,380 --> 00:37:01,750 Ale včera v noci, nebol som v strese, Bol som trochu smutný. 827 00:37:01,750 --> 00:37:04,520 Tak som napísal vo svojom denníku o čo som bol smutný. 828 00:37:04,520 --> 00:37:08,020 A bol som smutný o tejto sekcii v tejto triede chýli ku koncu. 829 00:37:08,020 --> 00:37:11,100 >> Tak som len tak čítať pre vás malý úryvok z môjho denníka, 830 00:37:11,100 --> 00:37:12,950 z minulej noci. 831 00:37:12,950 --> 00:37:17,400 Môžem dostať nejaké obrúsky, Niektoré tkanivá z Toma? 832 00:37:17,400 --> 00:37:18,040 Nie, budem plakať. 833 00:37:18,040 --> 00:37:19,720 Nechcem plakať. 834 00:37:19,720 --> 00:37:22,030 Nie, že nemôžete plakať, Ja len neplač. 835 00:37:22,030 --> 00:37:24,040 Ja ani neviem, či moja slza žľazy pracoval - slzné kanáliky. 836 00:37:24,040 --> 00:37:25,630 Som kričal po dlhej dobe. 837 00:37:25,630 --> 00:37:26,510 >> DIVÁKOV: [nepočuteľné]. 838 00:37:26,510 --> 00:37:28,920 >> SPEAKER: OK, vďaka. 839 00:37:28,920 --> 00:37:30,070 OK, je tu trochu predslov - 840 00:37:30,070 --> 00:37:32,480 tam je nejaké iné časti môjho denníka vstup, pretože sa snažím denníku každý 841 00:37:32,480 --> 00:37:33,600 noc predtým, než som sa dostal do postele. 842 00:37:33,600 --> 00:37:34,900 Vrelo odporúčam denníka. 843 00:37:34,900 --> 00:37:38,600 To vám pomôže spracovať veci, a tiež byť veľmi vďačný z vášho dňa. 844 00:37:38,600 --> 00:37:43,063 A to robí to oveľa jednoduchšie sa pozrieť späť na svoj deň, a uvedomiť si, že 845 00:37:43,063 --> 00:37:44,240 tam bolo veľa dobrý veci, ktoré sa stalo. 846 00:37:44,240 --> 00:37:47,240 Aj keď sa cítite naozaj zdôrazniť, v noci alebo naozaj naštvaná, alebo 847 00:37:47,240 --> 00:37:49,022 Naozaj smutný alebo unavený. 848 00:37:49,022 --> 00:37:50,272 >> Oh, môj bože. 849 00:37:50,272 --> 00:37:52,546 850 00:37:52,546 --> 00:37:54,400 Ja ani neviem, či je to napísané, že dobre, pretože som nemal skorigovať to. 851 00:37:54,400 --> 00:37:55,780 Ale my si to prečítať. 852 00:37:55,780 --> 00:37:59,950 I obyčajne nemajú čítať moje časopis, samozrejme. 853 00:37:59,950 --> 00:38:03,720 >> "Zajtra budem učiť mojej poslednej CS50 časť roka. 854 00:38:03,720 --> 00:38:05,860 Je to šialené, ako rýchlo ten čas letí. 855 00:38:05,860 --> 00:38:09,900 Napriek tomu, som ohromený tým, ako rôzne moja skúsenosť učí v tomto roku bol 856 00:38:09,900 --> 00:38:11,365 ako keď som bol vo druháku. 857 00:38:11,365 --> 00:38:14,120 Pre začiatok, určite viem, materiál lepšie. 858 00:38:14,120 --> 00:38:16,820 Ale nehovorte to mojej prvej kohortu študentov, ktoré. 859 00:38:16,820 --> 00:38:20,030 Ešte dôležitejšie je, však, som si uvedomil, že radosť, ktorá prichádza z postavenia 860 00:38:20,030 --> 00:38:23,160 v prednej časti miestnosti, čo začína ako cudzinci, ale skončí ako v 861 00:38:23,160 --> 00:38:27,150 aspoň, priatelia na Facebooku, je nie je prvý rok náhoda. 862 00:38:27,150 --> 00:38:29,970 Skôr je to z vedomia, že v niektoré malé spôsob, pomáhate 863 00:38:29,970 --> 00:38:32,980 talentovaný, premýšľavý, nádherný, a vášniví ľudia dozvedieť niečo viac 864 00:38:32,980 --> 00:38:34,750 o informatike. 865 00:38:34,750 --> 00:38:37,480 >> Ste presúva že žiarovku len bit v zásuvke, tak, že je schopná 866 00:38:37,480 --> 00:38:42,120 žiariť jasnejšie ako vy, alebo oni, by si mohol predstaviť na začiatku semestra. 867 00:38:42,120 --> 00:38:45,390 Tie pomáhajú zase tie mračí hore dole a klásť otázky, ktoré 868 00:38:45,390 --> 00:38:49,240 poskytnúť podporu, ale stále umožňujú Študenti sa postaviť na vlastnú päsť. 869 00:38:49,240 --> 00:38:52,190 >> Je to rozhodne nie je prehnané povedať, že táto časť je moja obľúbená 870 00:38:52,190 --> 00:38:53,190 časť týždňa. 871 00:38:53,190 --> 00:38:57,930 Alebo dokonca, že som neváhal povedať, že je to všetko, na 17:30 každý týždeň, pretože vedel, 872 00:38:57,930 --> 00:39:00,640 že to bude príliš dlho kým sa znova stretneme. 873 00:39:00,640 --> 00:39:02,740 >> Napriek tomu, že som neuveriteľne vďačný každý, kto mi dal to 874 00:39:02,740 --> 00:39:05,010 možnosť vrátiť k ostatným. 875 00:39:05,010 --> 00:39:07,340 Dávidovi za jeho trpezlivosť a dôveru. 876 00:39:07,340 --> 00:39:11,040 K filmové a produkčné posádkou, pre takže vyzerám trochu slušný. 877 00:39:11,040 --> 00:39:15,380 A čo je najdôležitejšie, aby svojim študentom, bez ktorých by som mať žiadny dôvod k 878 00:39:15,380 --> 00:39:17,890 stráviť 10 hodín prísť na to najlepšie spôsob, ako kresliť odkazy, alebo vyložiť 879 00:39:17,890 --> 00:39:20,330 Tabuľka delfínov, cez JavaScript. 880 00:39:20,330 --> 00:39:22,620 Ako vždy, to bolo požehnanie. " 881 00:39:22,620 --> 00:39:25,420 >> Takže s tým, ďakujem chlapci. 882 00:39:25,420 --> 00:39:29,000 Uvidíme sa všetci na CS50 veľtrhu, a Hackathon, či tam si. 883 00:39:29,000 --> 00:39:32,020 A ak máte nejaké otázky, budem sa držať okolo, kým nie sú k dispozícii žiadne ďalšie. 884 00:39:32,020 --> 00:39:33,760 Ale ďakujem vám chalani za skvelý rok. 885 00:39:33,760 --> 00:39:37,290 >> [APPLAUSE] 886 00:39:37,290 --> 00:39:38,540 >> SPEAKER: by som mohol plakať. 887 00:39:38,540 --> 00:39:40,800