1 00:00:00,000 --> 00:00:07,700 2 00:00:07,700 --> 00:00:15,180 >> Воведничар: Добро, па, нема да го верувам, Но, минатата недела, во понеделникот, во Пирс, јас 3 00:00:15,180 --> 00:00:16,090 беше долу во подрумот. 4 00:00:16,090 --> 00:00:17,010 Јас никогаш не одат на Пирс. 5 00:00:17,010 --> 00:00:20,530 И јас никогаш не сум да се вратам повторно, затоа што Го оставив работи сам за, 6 00:00:20,530 --> 00:00:23,950 како, пет минути и некој украде мојот компјутер и мојот 7 00:00:23,950 --> 00:00:26,050 телефон од мојот ранец. 8 00:00:26,050 --> 00:00:28,780 Што значи јас го зедов тоа назад, и потоа за помалку од една недела подоцна 9 00:00:28,780 --> 00:00:30,220 тоа доби украдени повторно. 10 00:00:30,220 --> 00:00:31,570 >> А потоа го доби уклучен - 11 00:00:31,570 --> 00:00:34,540 Најди мојот iPhone продолжува да биде од помош. 12 00:00:34,540 --> 00:00:37,340 Па јас продолжи да се поттикне да не го користите. 13 00:00:37,340 --> 00:00:42,270 Се покажа на еднаш, и таа беше во МИТ, како 15 минути подоцна, а лицето 14 00:00:42,270 --> 00:00:45,770 наречен овој телефонски број кои покажаа во мојот AT & T повик се најавите. 15 00:00:45,770 --> 00:00:48,830 >> Па отидов онлајн, наречен тој телефон број, и отиде директно на овој 16 00:00:48,830 --> 00:00:50,540 телефонска секретарка на шпански. 17 00:00:50,540 --> 00:00:52,520 И не сум слушнал за тоа, бидејќи. 18 00:00:52,520 --> 00:00:54,800 Па морав да добие нов компјутер и телефон. 19 00:00:54,800 --> 00:00:55,150 Знам. 20 00:00:55,150 --> 00:00:56,326 Да. 21 00:00:56,326 --> 00:01:00,110 Но, ако вие момци сакате да чип во мојата компјутерски фонд по ова, тоа е причината зошто 22 00:01:00,110 --> 00:01:01,030 Сум те праша тука. 23 00:01:01,030 --> 00:01:02,280 Само се шегувам. 24 00:01:02,280 --> 00:01:04,239 25 00:01:04,239 --> 00:01:07,420 Но тоа беше навистина тажна и трауматично. 26 00:01:07,420 --> 00:01:10,700 >> Но, сето тоа назад сега, и затоа p-собата 8 зеде толку долго, бидејќи 27 00:01:10,700 --> 00:01:12,480 Немав компјутер. 28 00:01:12,480 --> 00:01:13,730 И некој го украл. 29 00:01:13,730 --> 00:01:16,940 И јас преку е-маил, прашуваат дали тие би градус вашиот P-сет 8. 30 00:01:16,940 --> 00:01:18,790 Но тие рекоа бр. 31 00:01:18,790 --> 00:01:20,000 А јас бев како, можам да имам мојот компјутер назад? 32 00:01:20,000 --> 00:01:21,270 И тие се како, бр. 33 00:01:21,270 --> 00:01:22,130 Само се шегувам. 34 00:01:22,130 --> 00:01:22,930 >> OK. 35 00:01:22,930 --> 00:01:28,140 Ова е нашата последна секција, и имам неколку - имаме само три 36 00:01:28,140 --> 00:01:29,790 работи на агендата. 37 00:01:29,790 --> 00:01:31,330 Ние ќе зборуваме малку за П водич. 38 00:01:31,330 --> 00:01:33,900 Тогаш ние ќе треба да поминат 15 минути на ладно демо. 39 00:01:33,900 --> 00:01:36,890 Тогаш ние ќе треба да сите велат збогум еден на друг. 40 00:01:36,890 --> 00:01:41,460 Вие навистина не треба вашите компјутери или пенкало или хартија за да снимите белешки, или 41 00:01:41,460 --> 00:01:42,410 следат заедно. 42 00:01:42,410 --> 00:01:45,620 Па претпоставувам ако имате на вашиот компјутер нагоре, тогаш сте на Facebook. 43 00:01:45,620 --> 00:01:46,530 Само велејќи. 44 00:01:46,530 --> 00:01:49,650 Освен ако не сте пополнување на П водич, кој е во прв план. 45 00:01:49,650 --> 00:01:50,690 >> На П водич е отворен. 46 00:01:50,690 --> 00:01:53,520 Сте имале е-маил за тоа. 47 00:01:53,520 --> 00:01:56,930 Откако сите прашања нешта се доставува на крајот на годината, јас ги добиете сите од 48 00:01:56,930 --> 00:02:03,710 П коментари во резултати од сите кој избира да ми даде фидбек. 49 00:02:03,710 --> 00:02:04,810 И така кога ќе одат во П - 50 00:02:04,810 --> 00:02:07,440 Не знам дали може да се направи ова, Џеф, затоа што ти си и проширување студент. 51 00:02:07,440 --> 00:02:12,730 Но кога ќе одат во П, ако не сте направи тоа пред, можете да го изберете вашиот 52 00:02:12,730 --> 00:02:14,020 наставник, кој е Дејвид Malan. 53 00:02:14,020 --> 00:02:14,970 Што треба да го направи тоа. 54 00:02:14,970 --> 00:02:15,690 >> А потоа можете да ги собереш TFS. 55 00:02:15,690 --> 00:02:17,750 И можете да изберете како многу TFS, како сакате. 56 00:02:17,750 --> 00:02:18,990 Но, постојат 60 од нас. 57 00:02:18,990 --> 00:02:20,350 Вие не треба да ги собереш сите. 58 00:02:20,350 --> 00:02:23,090 Вие само може да ме земе, или само изберете неколку други луѓе, ако сакате, да се 59 00:02:23,090 --> 00:02:24,470 им даде повратни информации, како и. 60 00:02:24,470 --> 00:02:27,595 И тогаш ќе го добиете резултати на сите овие различни оски, а потоа можете да го напуштите 61 00:02:27,595 --> 00:02:28,570 ги фидбек. 62 00:02:28,570 --> 00:02:31,520 >> И тогаш, како еден месец подоцна, Ќе добиете сето она што фидбек. 63 00:02:31,520 --> 00:02:34,570 И исто како и повратни информации во кој сте биле да ми дава во текот на семестарот, јас 64 00:02:34,570 --> 00:02:35,790 читаат сето тоа. 65 00:02:35,790 --> 00:02:39,620 И тоа е навистина од голема помош, и тоа им помага мене расте како учител и како 66 00:02:39,620 --> 00:02:40,680 индивидуа. 67 00:02:40,680 --> 00:02:43,360 Значи, ве молам, да потрае некое време да го направи тоа. 68 00:02:43,360 --> 00:02:45,020 Ние сме само ќе биде тука за, како, 30 минути. 69 00:02:45,020 --> 00:02:48,090 Значи, ако сакате, на крајот на ова, да земе пет минути, и само да ги пополните 70 00:02:48,090 --> 00:02:49,960 на П, бидејќи тоа не презема повеќе време од тоа. 71 00:02:49,960 --> 00:02:53,410 Дека ќе биде прекрасен, а исто така ја добиете вашата оценки назад побрзо, ако 72 00:02:53,410 --> 00:02:54,620 ќе ги пополните П 73 00:02:54,620 --> 00:02:56,580 >> Па повеќето од вас го направиле тоа порано - 74 00:02:56,580 --> 00:02:58,240 или не, околу половина од вас го направиле тоа порано. 75 00:02:58,240 --> 00:03:00,060 Но, ако сте бруцош, тоа е што е тоа. 76 00:03:00,060 --> 00:03:01,910 Тоа ќе биде иста за сите класи. 77 00:03:01,910 --> 00:03:02,270 Направете го тоа. 78 00:03:02,270 --> 00:03:02,900 Таа ги зема пет минути. 79 00:03:02,900 --> 00:03:07,610 Но, исто така, ако го направи тоа малку сериозно, тоа не е најлошото нешто 80 00:03:07,610 --> 00:03:10,270 во светот, затоа што сигурно земаат сериозно. 81 00:03:10,270 --> 00:03:13,000 >> Значи, ако ме оставиш лице смешковци, Јас ќе го цениме тоа. 82 00:03:13,000 --> 00:03:17,550 Но јас, исто така, ќе го цениме ако ме остави повеќе од лице со смешковци. 83 00:03:17,550 --> 00:03:18,270 Но, тоа е до вас. 84 00:03:18,270 --> 00:03:21,540 Не можам да ви кажам - или како голем смешко се соочи со капитал Д Тоа би 85 00:03:21,540 --> 00:03:23,060 да биде дури и подобро. 86 00:03:23,060 --> 00:03:27,860 >> ОК, тоа е се што имам за П Ако имате било какви прашања, можете да побарате 87 00:03:27,860 --> 00:03:29,370 мене, но прилично очигледен. 88 00:03:29,370 --> 00:03:31,090 Само, те молам, да го пополнат надвор. 89 00:03:31,090 --> 00:03:34,390 Јас навистина би го ценат, и тоа значи многу за мене. 90 00:03:34,390 --> 00:03:38,910 >> Добро, тоа е она што ние ќе треба да поминат 15 минути поминува. 91 00:03:38,910 --> 00:03:39,800 Одам да ви покаже некои код. 92 00:03:39,800 --> 00:03:42,080 Мислам дека ова е навистина кул, и ова ми доби повеќе 93 00:03:42,080 --> 00:03:43,810 возбудени по компјутерски науки. 94 00:03:43,810 --> 00:03:46,480 Па се надевам дека тоа ќе го стори иста за сите вас. 95 00:03:46,480 --> 00:03:51,760 >> Ние ќе се обидеме да се отвори - и сето тоа код ќе го испратам до тебе подоцна. 96 00:03:51,760 --> 00:03:52,680 Но, ние сме само ќе се отвори - 97 00:03:52,680 --> 00:03:54,310 Јас сум во мојата терминал - 98 00:03:54,310 --> 00:03:56,810 ние ќе се отвори оваа програма наречен [? MySum. ?] 99 00:03:56,810 --> 00:04:01,290 100 00:04:01,290 --> 00:04:02,540 >> Може да се прочита дека сите, или треба да се направи тоа поголема? 101 00:04:02,540 --> 00:04:07,670 102 00:04:07,670 --> 00:04:13,040 Некој може да ми каже што овој код ќе правам кога ќе се стартува, или она што овој 103 00:04:13,040 --> 00:04:14,320 Програмата ќе направам кога ќе го извршите? 104 00:04:14,320 --> 00:04:30,710 105 00:04:30,710 --> 00:04:32,400 >> [? AVI,?] Што мислите тоа се случува да направам? 106 00:04:32,400 --> 00:04:33,335 Финиш џвакање. 107 00:04:33,335 --> 00:04:35,033 Вие не треба да се зборува со отворена уста. 108 00:04:35,033 --> 00:04:38,330 109 00:04:38,330 --> 00:04:42,860 >> Публика: Дали е потребно еден куп на аргументи, се најде сумата од нив се враќаат 110 00:04:42,860 --> 00:04:45,285 сума, а потоа го испечатите? 111 00:04:45,285 --> 00:04:53,045 Или е потребно во два аргументи, и тогаш тоа го прави [нечујни]. 112 00:04:53,045 --> 00:04:56,460 А потоа тоа отпечатоци од она што резултатите се. 113 00:04:56,460 --> 00:04:58,100 >> Воведничар: Затвори, навистина блиску. 114 00:04:58,100 --> 00:04:59,840 Секој сакате да го додадете [? што Ави?] рече? 115 00:04:59,840 --> 00:05:04,830 116 00:05:04,830 --> 00:05:07,293 Дали треба да се даде на оваа програма било командната линија аргументи? 117 00:05:07,293 --> 00:05:09,145 >> ПУБЛИКАТА: Не 118 00:05:09,145 --> 00:05:09,610 >> ЗВУЧНИК: Не 119 00:05:09,610 --> 00:05:11,250 Што се случува ако не го даде било командната линија аргументи? 120 00:05:11,250 --> 00:05:12,500 Јас само ги запишувам точка црта MySum. 121 00:05:12,500 --> 00:05:15,145 122 00:05:15,145 --> 00:05:16,630 >> Публика: 1 плус 2 еднаква 3. 123 00:05:16,630 --> 00:05:17,250 >> Воведничар: 1 плус 2 еднаква 3. 124 00:05:17,250 --> 00:05:18,570 И тоа ќе се печати тоа. 125 00:05:18,570 --> 00:05:19,450 Тоа е точно. 126 00:05:19,450 --> 00:05:21,370 Ќе видите дека печати ѓ линија на дното. 127 00:05:21,370 --> 00:05:23,450 Тоа ќе испечатите, b и тогаш збирот на a и b. 128 00:05:23,450 --> 00:05:26,360 И претпоставувам дека се претпостави дека Збирот работи правилно. 129 00:05:26,360 --> 00:05:28,120 Добра претпоставка. 130 00:05:28,120 --> 00:05:32,250 >> Добро, а што ќе се случи ако јас даде она аргумент? 131 00:05:32,250 --> 00:05:33,010 [? Manu? ?] 132 00:05:33,010 --> 00:05:36,230 >> Публика: Ќе додадете она што првиот аргумент е да b. 133 00:05:36,230 --> 00:05:37,150 Или да 2, жалам. 134 00:05:37,150 --> 00:05:38,480 >> Воведничар: Право, на 2. 135 00:05:38,480 --> 00:05:42,470 Дали некој знае што strtol прави тоа? 136 00:05:42,470 --> 00:05:43,960 Тоа е во основа atoi. 137 00:05:43,960 --> 00:05:47,240 Atoi е всушност фенси верзија на - 138 00:05:47,240 --> 00:05:49,600 или поедноставно верзија на strtol. 139 00:05:49,600 --> 00:05:51,790 Но тоа всушност го користи strtol. 140 00:05:51,790 --> 00:05:54,610 141 00:05:54,610 --> 00:05:58,010 И јас дознав тоа затоа што сакав нешто како atoi, а потоа кога ќе 142 00:05:58,010 --> 00:06:01,110 се atoi, јас ги прочитав овде долу. 143 00:06:01,110 --> 00:06:04,380 И го најдов "Ова однесување е иста како и "strtol. 144 00:06:04,380 --> 00:06:06,850 Така, тоа е во основа atoi за сите намерите и целите. 145 00:06:06,850 --> 00:06:09,320 И ќе видите јас дури и се користи за ништовни и 10. 146 00:06:09,320 --> 00:06:14,390 >> Ова всушност ви овозможува да стринг, и тоа се претвори во голем број, и одберете 147 00:06:14,390 --> 00:06:15,970 што база сакате да го направи тоа внатре 148 00:06:15,970 --> 00:06:17,370 Значи ова е база 10, токму тука. 149 00:06:17,370 --> 00:06:20,455 Јас би можеле да имаат направено база два за децимална запирка, база 16 за хексадецимален. 150 00:06:20,455 --> 00:06:22,090 Тоа е прилично кул. 151 00:06:22,090 --> 00:06:25,860 Но скратам приказната, ова се две броеви и додава нив заедно. 152 00:06:25,860 --> 00:06:29,260 >> Па ајде да се кандидира. 153 00:06:29,260 --> 00:06:32,560 И ти исто така ќе забележите, постои некои работи - 154 00:06:32,560 --> 00:06:37,830 па имам makefile токму тука, и ако отворите дека до, некои работи 155 00:06:37,830 --> 00:06:39,270 ќе забележите се различни. 156 00:06:39,270 --> 00:06:42,370 Особено, овој аргумент токму тука, веројатно 157 00:06:42,370 --> 00:06:43,010 не сум ја видел тоа порано. 158 00:06:43,010 --> 00:06:45,770 Општо земено, ние ги собира нешта со цртичка нула, нула. 159 00:06:45,770 --> 00:06:51,500 Цртичка нула, нула, значи не го правам било оптимизации, компајлерот. 160 00:06:51,500 --> 00:06:54,950 Не се обиде да направи ништо фенси, или направи ништо кандидира побрзо, или да добијат 161 00:06:54,950 --> 00:06:56,530 ослободи од варијабли кои се неопходни. 162 00:06:56,530 --> 00:06:58,080 Не се оптимизира овој код на сите, 163 00:06:58,080 --> 00:07:00,110 >> Прашувам за трето ниво оптимизација. 164 00:07:00,110 --> 00:07:02,580 Па јас барам компајлерот да се направи многу оптимизации. 165 00:07:02,580 --> 00:07:05,870 Можете да го промени тоа во makefile кога имате овој код, ако сакате 166 00:07:05,870 --> 00:07:07,190 за да го видиш различни нешта. 167 00:07:07,190 --> 00:07:08,660 Кои ние ќе ви покаже во секунда. 168 00:07:08,660 --> 00:07:12,080 Па ние се кандидира ми Збирот 1 плус 2 плус 3. 169 00:07:12,080 --> 00:07:13,445 Некој да ми даде два аргументи. 170 00:07:13,445 --> 00:07:17,221 171 00:07:17,221 --> 00:07:18,210 >> Публика: 4 и 5. 172 00:07:18,210 --> 00:07:18,966 >> Воведничар: 4 и 5. 173 00:07:18,966 --> 00:07:19,900 Ви благодарам. 174 00:07:19,900 --> 00:07:20,860 Голема, таа работи. 175 00:07:20,860 --> 00:07:25,700 Кои се некои други добри аргументи да се обиде, да бидете сигурни дека тоа функционира? 176 00:07:25,700 --> 00:07:27,050 Некој? 177 00:07:27,050 --> 00:07:27,430 >> ПУБЛИКАТА: 0. 178 00:07:27,430 --> 00:07:29,210 >> Воведничар: 0 и? 179 00:07:29,210 --> 00:07:31,010 >> ПУБЛИКАТА: Негативни 3. 180 00:07:31,010 --> 00:07:32,040 >> Воведничар: Таа работи. 181 00:07:32,040 --> 00:07:33,670 Но тие беа добри избори. 182 00:07:33,670 --> 00:07:36,600 Добро, па да се вратиме тука. 183 00:07:36,600 --> 00:07:38,540 Ова е mysum.c. 184 00:07:38,540 --> 00:07:42,440 Ќе забележите таму е исто така нешто наречен sumfunction.c. 185 00:07:42,440 --> 00:07:48,110 И ова вели, ох, има нешто што е дефинирано во sumfunction.c. 186 00:07:48,110 --> 00:07:51,480 Јас не се вклучи оваа датотека тука бидејќи јас не треба да се. 187 00:07:51,480 --> 00:07:54,840 Но јас го водат во кога ќе ги собере, кои го забележале тоа. 188 00:07:54,840 --> 00:07:57,380 >> Ајде да дојдете до. 189 00:07:57,380 --> 00:08:02,880 Видовме кога ќе состави mysum, право таму, ние се поврзани во бинарното од 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 И јас не треба хедер датотека бидејќи, се разбира, тука е и 193 00:08:08,470 --> 00:08:09,240 функција декларација. 194 00:08:09,240 --> 00:08:12,200 Толку остри вклучуваат нормално само става во функција декларација. 195 00:08:12,200 --> 00:08:13,730 Тука сум само да го стави директно во кодот. 196 00:08:13,730 --> 00:08:16,370 И така јас треба да направите е линк во бинарното, која го правам. 197 00:08:16,370 --> 00:08:19,950 >> Секое нагаѓања за тоа што е во sumfunction.c? 198 00:08:19,950 --> 00:08:21,950 Што код што сум напишал во sumfunction.c? 199 00:08:21,950 --> 00:08:25,445 200 00:08:25,445 --> 00:08:26,695 >> ПУБЛИКАТА: [нечујни]. 201 00:08:26,695 --> 00:08:29,460 202 00:08:29,460 --> 00:08:30,630 >> Воведничар: Секое нагаѓања? 203 00:08:30,630 --> 00:08:30,940 Да? 204 00:08:30,940 --> 00:08:33,710 >> ПУБЛИКАТА: Мислам, го дефинира некои [нечујни]. 205 00:08:33,710 --> 00:08:33,975 >> Воведничар: Да. 206 00:08:33,975 --> 00:08:37,650 Па јас го пишувам int Збирот int a. 207 00:08:37,650 --> 00:08:41,120 Јас пишувам оваа линија, а потоа имам отворен кадрава голема заграда, затворен кадрава голема заграда. 208 00:08:41,120 --> 00:08:46,160 Што мислите јас пишувам во оние тркалезните загради, внатре таа функција? 209 00:08:46,160 --> 00:08:46,600 Да? 210 00:08:46,600 --> 00:08:48,150 >> ПУБЛИКАТА: Враќање еднаква на. 211 00:08:48,150 --> 00:08:50,010 >> Процесор: Тоа е навистина добар се погоди. 212 00:08:50,010 --> 00:08:51,720 Кој мисли [? Manu?] Е во право? 213 00:08:51,720 --> 00:08:54,122 Таа вели дека се врати плус б. 214 00:08:54,122 --> 00:08:55,860 Добро, не сите. 215 00:08:55,860 --> 00:08:56,520 [? Akshar,?] 216 00:08:56,520 --> 00:08:57,390 ќе го направите, исто така? 217 00:08:57,390 --> 00:09:00,430 Сигурен си? 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 Што? 221 00:09:10,050 --> 00:09:11,662 >> ПУБЛИКАТА: Вие напишани погрешно. 222 00:09:11,662 --> 00:09:13,000 >> Воведничар: Не, јас не. 223 00:09:13,000 --> 00:09:13,966 Да, само се шегувам. 224 00:09:13,966 --> 00:09:15,300 Во право си. 225 00:09:15,300 --> 00:09:15,930 Тоа е токму она што го кажува. 226 00:09:15,930 --> 00:09:17,110 Тоа е се вратат плус б. 227 00:09:17,110 --> 00:09:18,570 Што го прави многу смисла. 228 00:09:18,570 --> 00:09:20,240 >> Добро, ајде да се вратиме тука. 229 00:09:20,240 --> 00:09:21,490 Можеме да видиме колку насловот - 230 00:09:21,490 --> 00:09:24,540 231 00:09:24,540 --> 00:09:25,660 тоа е вид на враќање. 232 00:09:25,660 --> 00:09:29,100 Се сеќавам, видовме дека ден еден, врати видот на функцијата, но оди 233 00:09:29,100 --> 00:09:30,160 пред името на int функција. 234 00:09:30,160 --> 00:09:31,560 Еве, јас сум напишал Инт. 235 00:09:31,560 --> 00:09:35,680 Што мислите ќе се случи ако во овој функција, јас не го пишувам int, но 236 00:09:35,680 --> 00:09:38,270 Јас пишувам непотпишана? 237 00:09:38,270 --> 00:09:41,050 Разликата, се разбира, е во тоа што непотпишана претставува само позитивни 238 00:09:41,050 --> 00:09:43,620 броеви, и int може да биде позитивни или негативни. 239 00:09:43,620 --> 00:09:45,450 >> Па јас сум смени враќање видот на оваа функција. 240 00:09:45,450 --> 00:09:49,370 Овој код не се совпаѓаат ова враќање тип тука. 241 00:09:49,370 --> 00:09:50,925 Што мислите ќе се случи кога ќе ги собере? 242 00:09:50,925 --> 00:09:53,840 243 00:09:53,840 --> 00:09:56,240 Треба да се развикам мене. 244 00:09:56,240 --> 00:09:57,700 Не викање. 245 00:09:57,700 --> 00:10:00,050 >> Она што за кога ќе ја стартувате програмата? 246 00:10:00,050 --> 00:10:05,810 Ајде да го направите пред 0 негативен 3, или негативни 1. 247 00:10:05,810 --> 00:10:10,180 Таа се уште работи, иако јас велам тоа е враќање една непотпишана цел број. 248 00:10:10,180 --> 00:10:12,060 Јасно е дека тоа не е враќање една непотпишана цел број. 249 00:10:12,060 --> 00:10:13,520 Тоа е враќање потпишан број. 250 00:10:13,520 --> 00:10:16,130 Тоа е враќање негативна 1. 251 00:10:16,130 --> 00:10:17,830 Добро, тоа е чудно. 252 00:10:17,830 --> 00:10:27,030 >> Што ако одам во тука и го правам тоа? 253 00:10:27,030 --> 00:10:29,700 Па јас изменета сè од int да непотпишана. 254 00:10:29,700 --> 00:10:31,590 Тоа може само да се земе непотпишана цели броеви. 255 00:10:31,590 --> 00:10:33,840 Но ние сепак мислам дека ќе се кандидира? 256 00:10:33,840 --> 00:10:35,652 >> Публика: Да. 257 00:10:35,652 --> 00:10:37,270 >> Воведничар: Ќе помогне. 258 00:10:37,270 --> 00:10:39,410 Тоа е лудо. 259 00:10:39,410 --> 00:10:43,140 И ние помине во јасно доделен цел број, ние може да помине два потпишани 260 00:10:43,140 --> 00:10:46,280 цел број, таа се уште работи. 261 00:10:46,280 --> 00:10:52,150 >> Добро, сите идеи зошто тоа сепак работи, или она што се случува? 262 00:10:52,150 --> 00:10:53,368 Да, Џеф. 263 00:10:53,368 --> 00:10:56,296 >> ПУБЛИКАТА: Таа има нешто да се направи со вашиот оптимизација дека 264 00:10:56,296 --> 00:10:57,760 истакнат. 265 00:10:57,760 --> 00:10:58,210 >> ЗВУЧНИК: Не 266 00:10:58,210 --> 00:11:00,570 Ние може да се промени оптимизација, се уште ќе работи. 267 00:11:00,570 --> 00:11:02,240 Можам да го направи тоа за вас, но - 268 00:11:02,240 --> 00:11:02,930 >> Публика: Ќе го земам вашиот збор за тоа. 269 00:11:02,930 --> 00:11:03,690 >> Воведничар: Да. 270 00:11:03,690 --> 00:11:09,690 Ако отворите makefile токму тука, Ја променив оптимизација. 271 00:11:09,690 --> 00:11:11,570 Па можете да направите цртичка нула, нула. 272 00:11:11,570 --> 00:11:12,820 Тоа сепак ќе работат. 273 00:11:12,820 --> 00:11:16,839 274 00:11:16,839 --> 00:11:20,280 Други мисли? 275 00:11:20,280 --> 00:11:22,600 >> Вие момци сите очекува да работат, па Зошто очекувате тоа да работат? 276 00:11:22,600 --> 00:11:31,210 277 00:11:31,210 --> 00:11:32,150 Не? 278 00:11:32,150 --> 00:11:33,660 Тишина. 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 Морам да чекам седум секунди, затоа прашав едно прашање. 282 00:11:41,650 --> 00:11:44,190 283 00:11:44,190 --> 00:11:48,660 >> Па кул работа за C, и сте веројатно искусни пред - ќе 284 00:11:48,660 --> 00:11:50,260 не може да има, ова може да биде прв пат. 285 00:11:50,260 --> 00:11:57,030 Но, како што сите знаете, кога ќе се напише нешто во C, тоа не спаси како 286 00:11:57,030 --> 00:11:57,760 ова на компјутерот. 287 00:11:57,760 --> 00:11:59,440 Таа е зачувана како оние и нули. 288 00:11:59,440 --> 00:12:02,970 Тоа оди од C код за асемблерски код. 289 00:12:02,970 --> 00:12:09,460 >> Дали некој видел асемблерски код пред, машина собранието код? 290 00:12:09,460 --> 00:12:10,630 Ние ќе се погледне во секунда. 291 00:12:10,630 --> 00:12:12,040 Тоа оди од C код за асемблерски код. 292 00:12:12,040 --> 00:12:13,755 А вие момци знаат фази на компилација. 293 00:12:13,755 --> 00:12:17,410 Ти мораше да се запаметат дека за квиз еден, и тогаш тоа напише на квиз нула. 294 00:12:17,410 --> 00:12:18,240 Повеќето луѓе се тоа во ред. 295 00:12:18,240 --> 00:12:19,760 Мислам дека вие момци го заковав. 296 00:12:19,760 --> 00:12:22,880 >> Но, вие момци се најдобри секција за квизови, патем. 297 00:12:22,880 --> 00:12:25,210 Што е неверојатна. 298 00:12:25,210 --> 00:12:25,910 Тоа нема да ви наштети. 299 00:12:25,910 --> 00:12:26,900 Не се загрижени. 300 00:12:26,900 --> 00:12:28,800 Но, тоа е навистина кул. 301 00:12:28,800 --> 00:12:29,660 Добра работа. 302 00:12:29,660 --> 00:12:32,870 >> Така тоа оди на асемблер јазикот, и тогаш тоа оди на оние кои и нули. 303 00:12:32,870 --> 00:12:35,500 И оние кои и нули се зачувуваат на компјутер, и тоа е она што се зачувуваат во 304 00:12:35,500 --> 00:12:38,340 на a.out, или во овој случај, извршна датотека. 305 00:12:38,340 --> 00:12:41,040 И компјутерот работи оние кои и нули. 306 00:12:41,040 --> 00:12:41,670 Нели? 307 00:12:41,670 --> 00:12:43,890 Ние научивме тоа порано. 308 00:12:43,890 --> 00:12:47,490 >> Па кул работа е, ова непотпишана идеја, идејата на видови ints непотпишана, 309 00:12:47,490 --> 00:12:50,490 и така натаму, и така натаму, тоа е тука во C јазикот. 310 00:12:50,490 --> 00:12:51,110 Оние постои. 311 00:12:51,110 --> 00:12:53,770 Но видови не постојат на на оние кои и нули. 312 00:12:53,770 --> 00:12:57,110 Видови дури и не навистина постојат на нивото асемблер јазикот. 313 00:12:57,110 --> 00:13:00,075 Па тоа е нешто што постои во C светот, но не постои во компјутер 314 00:13:00,075 --> 00:13:01,640 свет или процесор светот. 315 00:13:01,640 --> 00:13:04,660 Тоа е некоја апстракција дека C јазик вклучени, да ја направиме нашата 316 00:13:04,660 --> 00:13:06,240 живее полесно. 317 00:13:06,240 --> 00:13:09,990 >> Па на крајот на денот, можам да пишувам многу различни работи тука, и тоа 318 00:13:09,990 --> 00:13:10,700 не прават разлика. 319 00:13:10,700 --> 00:13:12,060 Затоа што постои само во светот на С. 320 00:13:12,060 --> 00:13:14,100 Тоа не постои во оние кои и нули светот. 321 00:13:14,100 --> 00:13:17,310 И нашата програма е извршување во на оние кои и нули светот. 322 00:13:17,310 --> 00:13:21,170 Значи уште не е јасно разнесени вашиот ум. 323 00:13:21,170 --> 00:13:22,740 Но мислам дека е кул. 324 00:13:22,740 --> 00:13:23,530 Да, Џеф. 325 00:13:23,530 --> 00:13:27,298 >> ПУБЛИКАТА: Значи, ако наместо да прави int, ќе се направи знак. 326 00:13:27,298 --> 00:13:27,770 И вие бевте - 327 00:13:27,770 --> 00:13:29,311 >> Воведничар: Да го сториме тоа во секунди. 328 00:13:29,311 --> 00:13:32,583 >> Публика: Затоа што тогаш ќе добиете непотпишана одат од негативни 128 до 329 00:13:32,583 --> 00:13:34,720 127 или 0 до 255. 330 00:13:34,720 --> 00:13:36,760 >> Воведничар: Значи знак е проблематична. 331 00:13:36,760 --> 00:13:39,460 Дали некој знае зошто знак ќе биде проблематична и всушност ќе 332 00:13:39,460 --> 00:13:42,930 се променат работите во оние и нули светот? 333 00:13:42,930 --> 00:13:44,370 >> Публика: Поради големината на знак. 334 00:13:44,370 --> 00:13:46,200 >> Воведничар: Големина на знак е 1. 335 00:13:46,200 --> 00:13:48,260 Па непотпишана е исто така 4 бајти. 336 00:13:48,260 --> 00:13:50,080 Значи знак ќе завртка работите. 337 00:13:50,080 --> 00:13:55,660 Но она што е 4 бајти кои е поврзани со знак? 338 00:13:55,660 --> 00:13:57,820 Или на кој додава една дополнителна - 339 00:13:57,820 --> 00:13:59,760 може да се стави уште еден карактер по знак. 340 00:13:59,760 --> 00:14:00,200 >> Публика: Char ѕвезда. 341 00:14:00,200 --> 00:14:01,220 >> Воведничар: Char ѕвезда има 4 бајти. 342 00:14:01,220 --> 00:14:02,490 Па ајде да направиме нешто тоа е знак ѕвезда. 343 00:14:02,490 --> 00:14:05,470 344 00:14:05,470 --> 00:14:07,240 >> Така што ова веројатно ќе работат, но ние сме случува да се направи нешто, дури и 345 00:14:07,240 --> 00:14:09,710 полуда од тоа. 346 00:14:09,710 --> 00:14:10,960 Во моето мислење, полуда. 347 00:14:10,960 --> 00:14:21,060 348 00:14:21,060 --> 00:14:24,570 >> Сум сега напишано функција која враќа покажувач, и е потребно 349 00:14:24,570 --> 00:14:29,480 покажувач и една непотпишана вредност - ќе промените ова назад кон int па ние не сме 350 00:14:29,480 --> 00:14:31,250 правење премногу промени одеднаш. 351 00:14:31,250 --> 00:14:35,370 И тоа има низа наречен, индекси во низа, и се враќа на 352 00:14:35,370 --> 00:14:35,850 адресата на. 353 00:14:35,850 --> 00:14:37,470 Видовме овие оператори порано. 354 00:14:37,470 --> 00:14:43,340 Ова, што мислите дека ова ќе да се направи, за возврат, кога ќе го извршите? 355 00:14:43,340 --> 00:14:48,280 356 00:14:48,280 --> 00:14:49,070 Што мислите што се случува да се направи? 357 00:14:49,070 --> 00:14:50,320 Секое нагаѓања? 358 00:14:50,320 --> 00:14:54,220 359 00:14:54,220 --> 00:14:55,320 >> Публика: Segfault. 360 00:14:55,320 --> 00:14:55,600 >> Воведничар: Што? 361 00:14:55,600 --> 00:14:56,660 Segfault? 362 00:14:56,660 --> 00:14:58,520 Тоа е добар се погоди. 363 00:14:58,520 --> 00:14:59,430 Tom вели истото. 364 00:14:59,430 --> 00:15:02,240 Било која друга нагаѓања? 365 00:15:02,240 --> 00:15:05,260 >> Кој мисли дека тоа ќе го прават истото? 366 00:15:05,260 --> 00:15:06,510 Кој мисли дека тоа ќе segfault? 367 00:15:06,510 --> 00:15:09,350 368 00:15:09,350 --> 00:15:10,230 Тоа го прави истото. 369 00:15:10,230 --> 00:15:11,880 Жал. 370 00:15:11,880 --> 00:15:13,860 >> Но, се разбира, ние се стави во 1 и 2. 371 00:15:13,860 --> 00:15:16,470 И оние кои се двете валидна, нели? 372 00:15:16,470 --> 00:15:19,420 Ајде да видиме, ние може да оди на второто место на низа. 373 00:15:19,420 --> 00:15:24,010 Но што ако ние направивме б негативен број? 374 00:15:24,010 --> 00:15:26,380 Тоа е веројатно подобра погоди за нешто segfaulting. 375 00:15:26,380 --> 00:15:30,310 376 00:15:30,310 --> 00:15:32,260 Се уште работи. 377 00:15:32,260 --> 00:15:35,020 >> Добро, ова е сега луд. 378 00:15:35,020 --> 00:15:38,350 Ова е еднакво вредни Збирот функција. 379 00:15:38,350 --> 00:15:40,470 Ова го прави истото точната нешто за враќање a и b. 380 00:15:40,470 --> 00:15:44,600 Некој може да се објасни зошто ова е добра ЕЕЗ функција, или зошто тоа функционира? 381 00:15:44,600 --> 00:15:45,850 Што се случува овде? 382 00:15:45,850 --> 00:15:49,360 383 00:15:49,360 --> 00:15:55,750 Зошто ова го стори истото нешто како нашите стари Збирот функција? 384 00:15:55,750 --> 00:15:56,890 [? Akshar,?] 385 00:15:56,890 --> 00:15:58,155 што се случува? 386 00:15:58,155 --> 00:16:01,540 >> Публика: Затоа што кога ќе имаат А тоа е обраќањето до 387 00:16:01,540 --> 00:16:03,950 локацијата меморија - 388 00:16:03,950 --> 00:16:07,910 и кога ќе го направите симболот, таа оди на таа мемориска адреса. 389 00:16:07,910 --> 00:16:13,610 И кога ќе одат до Б, ти си вид на се движат чекори од таа меморија адреса, 390 00:16:13,610 --> 00:16:15,550 ти си го врати. 391 00:16:15,550 --> 00:16:20,083 Па ти си, всушност, всушност, додавање на и b [нечујни]. 392 00:16:20,083 --> 00:16:23,300 393 00:16:23,300 --> 00:16:26,222 Каде се стандардни операции на тој за возврат? 394 00:16:26,222 --> 00:16:27,683 Како, каде заградите падне? 395 00:16:27,683 --> 00:16:30,610 Е враќање на адреса на еден пред или по [нечујни]? 396 00:16:30,610 --> 00:16:32,380 >> Воведничар: Тоа се случува да индекс во б - 397 00:16:32,380 --> 00:16:34,430 или индекс во - и потоа врати адреса. 398 00:16:34,430 --> 00:16:38,800 399 00:16:38,800 --> 00:16:41,340 Добро, така што не сите разбираат што [? Akshar?] 400 00:16:41,340 --> 00:16:45,830 рече, и објасни, зошто тоа функционира? 401 00:16:45,830 --> 00:16:49,430 Јас не, прв пат некој објасни ова за мене. 402 00:16:49,430 --> 00:16:51,900 Некој би сакал слика да се објасни ова? 403 00:16:51,900 --> 00:16:55,320 Ние ќе се нацрта слика, со нема маркери, тоа е одлично. 404 00:16:55,320 --> 00:16:57,920 Најде некои. 405 00:16:57,920 --> 00:17:03,390 >> Па ние имаме низа што е серија на кутии. 406 00:17:03,390 --> 00:17:07,160 407 00:17:07,160 --> 00:17:13,710 Првиот е индекс 0, индексот 1, 2, 3, 4, точка, точка, точка. 408 00:17:13,710 --> 00:17:15,609 Еден типичен низа. 409 00:17:15,609 --> 00:17:19,540 И покрај ја да ја индекси, сите тие имаат мемориски адреси. 410 00:17:19,540 --> 00:17:30,190 Па ајде даде оваа меморија адреса 13, 14, 15, 16, 17, итн. 411 00:17:30,190 --> 00:17:32,490 Сите ли се тука досега. 412 00:17:32,490 --> 00:17:35,810 >> Па е адреса. 413 00:17:35,810 --> 00:17:38,850 Името на низа, покажувач е зачувана таму. 414 00:17:38,850 --> 00:17:42,730 Тоа е покажувач, тоа е мемориска локација, на почетокот на низата. 415 00:17:42,730 --> 00:17:45,910 Значи, ако ова беа низа, е ќе биде вредноста на 13. 416 00:17:45,910 --> 00:17:49,110 И, се разбира, може да се даде на било која вредност сакаме. 417 00:17:49,110 --> 00:17:52,450 Char ѕвезда на, ние може да даде било меморија адреса сакаме. 418 00:17:52,450 --> 00:17:55,940 Ние може да го даде 0, ние може да го даде негативни 1 - негативни 1 не постои, 419 00:17:55,940 --> 00:17:58,820 така што е веројатно проблематично, но те видов дека се 'уште работел. 420 00:17:58,820 --> 00:18:03,070 Па ние може да даде било кој број што сакате, мемориската адреса сакаме. 421 00:18:03,070 --> 00:18:08,720 >> Потоа, int b вели, во ред, одат овој број на чекори во низа. 422 00:18:08,720 --> 00:18:13,150 Па ако b изнесува 2, и изнесува 13, ние сме на мемориската адреса 13. 423 00:18:13,150 --> 00:18:17,330 И одиме два чекори во, и така ние сме тука. 424 00:18:17,330 --> 00:18:21,150 И симболот значи враќање на адреса на оваа локација. 425 00:18:21,150 --> 00:18:23,990 И адресата е, се разбира, 15. 426 00:18:23,990 --> 00:18:28,710 Па да добиеме 13 плус 2, или плус b, кое е 15. 427 00:18:28,710 --> 00:18:29,590 >> Прашањето е, иако - 428 00:18:29,590 --> 00:18:30,250 Жал ми е. 429 00:18:30,250 --> 00:18:34,324 Дали тоа се разјаснат работите зошто тоа функционира? 430 00:18:34,324 --> 00:18:36,300 >> ПУБЛИКАТА: Зошто тоа ќе работи ќе - 431 00:18:36,300 --> 00:18:38,770 па можете да имате низа и оди на негативни индекс? 432 00:18:38,770 --> 00:18:39,050 >> Воведничар: Токму така. 433 00:18:39,050 --> 00:18:40,870 Па ние го сторивме негативни броеви, па тоа е - 434 00:18:40,870 --> 00:18:42,770 Дали ова има смисла, иако, Прво, [? AVI,?] 435 00:18:42,770 --> 00:18:43,120 за вас? 436 00:18:43,120 --> 00:18:48,840 >> Публика: Да јас сум само [Нечујни], но - 437 00:18:48,840 --> 00:18:50,440 >> Воведничар: Да, ова ќе се врати 15. 438 00:18:50,440 --> 00:18:53,523 Ако беше 13, и б е 2, ова ќе се врати 15. 439 00:18:53,523 --> 00:18:58,160 >> ПУБЛИКАТА: Значи нула индексирање не стане прашање, нели? 440 00:18:58,160 --> 00:19:00,160 Затоа што се движат од 0. 441 00:19:00,160 --> 00:19:00,470 >> Воведничар: Токму така. 442 00:19:00,470 --> 00:19:05,000 Така да се движат - па ако б беше 0, вие не би се движат насекаде. 443 00:19:05,000 --> 00:19:06,330 А вие само ќе си се врати на адреса - 444 00:19:06,330 --> 00:19:10,830 Ако Б е 0, тоа е во суштина враќање на таа адреса на. 445 00:19:10,830 --> 00:19:13,960 Поминува во знак ѕвезда на и враќање на адреса на е само враќање на, 446 00:19:13,960 --> 00:19:15,860 суштина. 447 00:19:15,860 --> 00:19:18,280 >> Добро, прашањето е зошто негативни броеви работа? 448 00:19:18,280 --> 00:19:21,670 И тоа е навистина кул работа во врска со ова, бидејќи ова треба segfault. 449 00:19:21,670 --> 00:19:25,110 И тоа ќе segfault ако ние направи нешто како ова. 450 00:19:25,110 --> 00:19:28,050 451 00:19:28,050 --> 00:19:29,300 Да речеме, int. 452 00:19:29,300 --> 00:19:34,390 453 00:19:34,390 --> 00:19:39,810 Па овој код изгледа идентично и треба да се однесуваат идентично. 454 00:19:39,810 --> 00:19:44,550 Во суштина, x е ѓубре променлива, па така ова треба да се однесуваат идентично. 455 00:19:44,550 --> 00:19:46,370 >> Да се ​​направи ова - 456 00:19:46,370 --> 00:19:47,620 Упс - 457 00:19:47,620 --> 00:19:54,790 458 00:19:54,790 --> 00:19:56,040 во ѕвезда. 459 00:19:56,040 --> 00:19:59,160 460 00:19:59,160 --> 00:20:02,733 Добро, ние сме веќе добива грешки овде, затоа што тоа е веќе се случува да се лути 461 00:20:02,733 --> 00:20:04,610 во мене, затоа што веќе знае она што доаѓа. 462 00:20:04,610 --> 00:20:07,060 Особено, на вториот. 463 00:20:07,060 --> 00:20:09,800 Адреса на рангирани меморија, поврзан со локална променлива. 464 00:20:09,800 --> 00:20:14,220 >> Во суштина, јас не одам да ги собере ова, а потоа јас ќе одам да го вратите направи 465 00:20:14,220 --> 00:20:14,920 она што го направија. 466 00:20:14,920 --> 00:20:19,130 Но, бидејќи ние никогаш не сме всушност пристап до она што е во меморијата 467 00:20:19,130 --> 00:20:21,930 локација, тоа не се случува да segfault. 468 00:20:21,930 --> 00:20:26,450 Ние никогаш не сме всушност гледа во она што е во втората кутија или она што е во било кутија 469 00:20:26,450 --> 00:20:28,340 на оваа низа. 470 00:20:28,340 --> 00:20:30,980 Ние сме само велејќи, тука е адреса на нешто што го барате и 471 00:20:30,980 --> 00:20:32,410 се врати таа адреса. 472 00:20:32,410 --> 00:20:35,700 Ние никогаш не сме всушност навлегуваме во низа да се погледне во таа локација. 473 00:20:35,700 --> 00:20:39,140 И бидејќи ние никогаш не го допре меморија, ние не се во неволја. 474 00:20:39,140 --> 00:20:40,760 Ние не добие segfault. 475 00:20:40,760 --> 00:20:46,225 >> Ако ние се обидовме да, повторно, се допре дека меморија, допир кој бил a или b - 476 00:20:46,225 --> 00:20:49,940 или заградата б, и под претпоставка е е 0 и - 477 00:20:49,940 --> 00:20:53,040 ако е 0, дури, дека ќе биде прилично лошо, бидејќи не можеме да одиме 478 00:20:53,040 --> 00:20:54,090 одредување на целиот пат таму. 479 00:20:54,090 --> 00:20:58,250 Ако a и b се и двете 0, и се обидовме да допир она што беше таму, тогаш ние би 480 00:20:58,250 --> 00:20:59,110 добие во неволја. 481 00:20:59,110 --> 00:21:02,160 Но, ако ние не ги допирајте она што е таму, ние само се вратат на адреса, тоа е 482 00:21:02,160 --> 00:21:08,300 всушност нема да segfault бидејќи што ви овозможува да ги извршуваат своите операции. 483 00:21:08,300 --> 00:21:11,920 Тоа само добива луд во тебе, и добива супер лути, кога ќе се обидат и да допрете 484 00:21:11,920 --> 00:21:15,740 вистински меморија и да се врати она што е во тоа мемориска локација. 485 00:21:15,740 --> 00:21:17,690 >> Дали тоа има смисла? 486 00:21:17,690 --> 00:21:24,820 Тоа е само луд дел од C. Значи, имаме уште едно од овие. 487 00:21:24,820 --> 00:21:27,760 488 00:21:27,760 --> 00:21:29,700 >> Кој мисли дека ова е кул? 489 00:21:29,700 --> 00:21:30,280 Повеќе луѓе. 490 00:21:30,280 --> 00:21:31,070 Тоа е добро. 491 00:21:31,070 --> 00:21:34,860 Добро, ова е нашата последна еден. 492 00:21:34,860 --> 00:21:37,314 И јас би сакал да ми каже дали или не мислите дека ова се случува 493 00:21:37,314 --> 00:21:38,564 да го стори истото точната нешто. 494 00:21:38,564 --> 00:22:06,050 495 00:22:06,050 --> 00:22:07,390 >> Имам овие запишано некаде. 496 00:22:07,390 --> 00:22:08,640 Јас не сум ги учев. 497 00:22:08,640 --> 00:22:33,350 498 00:22:33,350 --> 00:22:42,900 >> Ајде да видиме, 8, б 4, 4, 2, 4, 0, 8, 0, 3, 4, 4, 2, 4, 0, 4. 499 00:22:42,900 --> 00:22:46,670 Значи ова е низа, сега, не е функција. 500 00:22:46,670 --> 00:22:49,640 И тоа е низа, бидејќи имаме квадратни загради, не кадрава загради. 501 00:22:49,640 --> 00:22:52,360 И тоа е низа на тоа каков тип? 502 00:22:52,360 --> 00:22:55,540 503 00:22:55,540 --> 00:22:56,862 Секој, хм? 504 00:22:56,862 --> 00:22:57,694 >> Публика: Нивната хексадецимални броеви? 505 00:22:57,694 --> 00:22:59,650 >> Воведничар: Но, она што е вид на C? 506 00:22:59,650 --> 00:23:00,710 Сите тие имаат хексадецимални броеви. 507 00:23:00,710 --> 00:23:01,960 Што е тип Ц? 508 00:23:01,960 --> 00:23:04,730 509 00:23:04,730 --> 00:23:05,480 Тоа ти го кажува. 510 00:23:05,480 --> 00:23:07,350 >> ПУБЛИКАТА: Тоа е непотпишана карактери. 511 00:23:07,350 --> 00:23:09,170 >> Воведничар: Право, непотпишана карактери. 512 00:23:09,170 --> 00:23:13,050 И два хексадецимални броеви е еден бајт. 513 00:23:13,050 --> 00:23:18,540 Така што овие се 1, 2, 3, 4, 5, 6, 7, 8, 9 бајти. 514 00:23:18,540 --> 00:23:21,360 Тоа е низа од 9 бајти. 515 00:23:21,360 --> 00:23:25,530 >> Добро, што веројатно веќе знаете одговорот на ова прашање. 516 00:23:25,530 --> 00:23:29,840 Но, она што мислите дека ќе се случи кога јас ја извршите оваа? 517 00:23:29,840 --> 00:23:34,110 Велам, пак, во mysum.c, Јас сум очекуваме функција 518 00:23:34,110 --> 00:23:36,280 кој ги зема два цели броја. 519 00:23:36,280 --> 00:23:40,265 И јас сум велејќи наместо тоа дека таа сума е низа од карактери. 520 00:23:40,265 --> 00:23:42,780 521 00:23:42,780 --> 00:23:48,070 Што ќе се случи кога Трчам. / Mysum и направи? 522 00:23:48,070 --> 00:23:53,230 >> Па, прво, повеќето од вас веројатно ќе се согласуваат дека направи - О, не, само се шегувам. 523 00:23:53,230 --> 00:23:54,746 Што добив направив погрешно? 524 00:23:54,746 --> 00:23:55,996 Ух ох. 525 00:23:55,996 --> 00:23:59,220 526 00:23:59,220 --> 00:24:01,160 Кои треба да бидат големи загради. 527 00:24:01,160 --> 00:24:02,790 Тоа е како да се иницијализира низа. 528 00:24:02,790 --> 00:24:04,040 Мојата лоша. 529 00:24:04,040 --> 00:24:07,530 530 00:24:07,530 --> 00:24:11,670 >> Па ние веќе видовме пред тоа видови се C-ниво на апстракција, не е 531 00:24:11,670 --> 00:24:12,610 компјутерски ниво апстракција. 532 00:24:12,610 --> 00:24:16,360 Па повеќето од вас веројатно го очекува да направи, или се претпостави дека тоа ќе го направи. 533 00:24:16,360 --> 00:24:18,680 Но, она што, кога јас се кандидира. / Mysum? 534 00:24:18,680 --> 00:24:19,930 Што ќе се случи? 535 00:24:19,930 --> 00:24:21,790 536 00:24:21,790 --> 00:24:23,422 Секое нагаѓања? 537 00:24:23,422 --> 00:24:25,270 >> Публика: Тоа се случува да испечатите збор. 538 00:24:25,270 --> 00:24:26,310 >> Воведничар: Тоа се случува да испечатите збор. 539 00:24:26,310 --> 00:24:29,335 Што збор? 540 00:24:29,335 --> 00:24:32,200 >> ПУБЛИКАТА: [нечујни]. 541 00:24:32,200 --> 00:24:33,240 >> Воведничар: Сите други нагаѓања? 542 00:24:33,240 --> 00:24:34,000 Добро, печати од една фраза. 543 00:24:34,000 --> 00:24:35,130 Можете да имате било какви фраза. 544 00:24:35,130 --> 00:24:36,240 Која ќе биде вашата страна. 545 00:24:36,240 --> 00:24:38,480 Секој кој има различен погоди? 546 00:24:38,480 --> 00:24:39,730 Ана, која е твојата претпоставка? 547 00:24:39,730 --> 00:24:42,675 548 00:24:42,675 --> 00:24:44,615 >> Публика: Тоа ќе испечатите - 549 00:24:44,615 --> 00:24:47,525 550 00:24:47,525 --> 00:24:49,480 две букви, или [нечујни] една буква. 551 00:24:49,480 --> 00:24:51,460 >> Воведничар: Една буква. 552 00:24:51,460 --> 00:24:53,260 >> ПУБЛИКАТА: Може ли да се смета како многу [нечујни]? 553 00:24:53,260 --> 00:24:55,426 >> Воведничар: Девет. 554 00:24:55,426 --> 00:24:56,640 Па, јас ќе одам да го работи. 555 00:24:56,640 --> 00:24:58,650 Тоа го прави истото точната нешто. 556 00:24:58,650 --> 00:25:00,190 Таа додава два броја заедно. 557 00:25:00,190 --> 00:25:02,740 Добро, ајде да помине два аргументи. 558 00:25:02,740 --> 00:25:03,710 Тоа не презема аргументи. 559 00:25:03,710 --> 00:25:06,080 Па јас не знам од каде тоа би можело да можеби се добијат овие аргументи. 560 00:25:06,080 --> 00:25:07,710 Но, ајде да помине на 100 и 0. 561 00:25:07,710 --> 00:25:09,200 И се додава 100 и 0. 562 00:25:09,200 --> 00:25:10,220 Тоа е лудо. 563 00:25:10,220 --> 00:25:12,280 Јас мислам така. 564 00:25:12,280 --> 00:25:14,480 >> Негативни 4, кој работи премногу. 565 00:25:14,480 --> 00:25:15,650 Можете да го направите нешто што сакате. 566 00:25:15,650 --> 00:25:17,920 Ова е подеднакво валидни Збирот функција. 567 00:25:17,920 --> 00:25:19,640 Ова е збир функција. 568 00:25:19,640 --> 00:25:21,510 Но не, не сте велејќи дека тоа е низа од бајти. 569 00:25:21,510 --> 00:25:23,570 Значи она што се случува овде? 570 00:25:23,570 --> 00:25:27,240 >> Значи, повторно, да се вратиме на оваа идеја дека ние рече на самиот почеток. 571 00:25:27,240 --> 00:25:32,050 Одите од C-ниво на код, до собранието јазик, да оние кои и нули. 572 00:25:32,050 --> 00:25:33,050 Ова е хексадецимален. 573 00:25:33,050 --> 00:25:35,780 Но, ова е навистина само многу од оние кои и нули. 574 00:25:35,780 --> 00:25:39,230 Ова е 72 единици и нули, нели? 575 00:25:39,230 --> 00:25:40,550 72 оние и нули. 576 00:25:40,550 --> 00:25:42,160 9 бајти. 577 00:25:42,160 --> 00:25:43,740 Секој бајт има 8 бита. 578 00:25:43,740 --> 00:25:44,760 Секој малку е една или нула. 579 00:25:44,760 --> 00:25:45,920 Па 72 од нив или нули. 580 00:25:45,920 --> 00:25:48,780 Тукушто ги напишал вака - наместо пишување на тоа како многу 581 00:25:48,780 --> 00:25:49,730 оние кои и нули. 582 00:25:49,730 --> 00:25:53,560 >> Но, ова ќе одат од C-ниво на јазик, до собранието 583 00:25:53,560 --> 00:25:54,620 јазик, да се код. 584 00:25:54,620 --> 00:25:59,020 И тоа ќе се печати во кодот, некаде, овие 72 единици и нули 585 00:25:59,020 --> 00:26:00,910 дека јас сум напишал овде. 586 00:26:00,910 --> 00:26:03,610 Значи некаде во тоа - 587 00:26:03,610 --> 00:26:04,850 ајде да одиме тука - 588 00:26:04,850 --> 00:26:11,240 некаде во mysum, програмата, се овие 72 единици и нули што сум 589 00:26:11,240 --> 00:26:14,930 напишани и кажа дека да се пишува. 590 00:26:14,930 --> 00:26:19,331 >> Сега, секој нагаѓања за тоа што тие 72 оние и нули значи? 591 00:26:19,331 --> 00:26:21,240 >> ПУБЛИКАТА: Веројатно исто нешто како враќање плус б. 592 00:26:21,240 --> 00:26:22,890 >> Воведничар: Веројатно исто нешто како враќање плус б. 593 00:26:22,890 --> 00:26:23,730 Ајде да се провери тоа. 594 00:26:23,730 --> 00:26:25,210 Ајде да дознаам како го направив тоа. 595 00:26:25,210 --> 00:26:31,840 >> Значи, ако се вратиме тука, ќе ти кажам да ја извршите оваа команда, objdump-S 596 00:26:31,840 --> 00:26:34,290 sumfunction.o. 597 00:26:34,290 --> 00:26:36,230 Ајде да одиме да ја стартувате. objdump - 598 00:26:36,230 --> 00:26:37,990 OBJ, шутнат. 599 00:26:37,990 --> 00:26:39,840 Во основа тоа може да ми даде она што сакам да го видам. 600 00:26:39,840 --> 00:26:40,840 Тоа може да ми даде на асемблер јазикот. 601 00:26:40,840 --> 00:26:42,730 Тоа може да ми даде на оние и нули. 602 00:26:42,730 --> 00:26:43,840 Тоа има еден тон на знамињата. 603 00:26:43,840 --> 00:26:45,860 Ова е еден ние ќе да се користи за сега. 604 00:26:45,860 --> 00:26:46,980 Точка - 605 00:26:46,980 --> 00:26:48,810 како што гледате во слајдови - 606 00:26:48,810 --> 00:26:53,840 цртичка капитал S вели, едитирате, Извор законик - 607 00:26:53,840 --> 00:26:58,410 оваа линија е од C - со собранието код и со оние кои и нули. 608 00:26:58,410 --> 00:27:00,350 И ние ќе да се кандидира тоа на sumfunction.o. 609 00:27:00,350 --> 00:27:01,410 Бидејќи тоа ќе биде полесно да се види. 610 00:27:01,410 --> 00:27:02,670 Повторно - хм? 611 00:27:02,670 --> 00:27:04,700 >> ПУБЛИКАТА: Вие напишани погрешно. 612 00:27:04,700 --> 00:27:05,930 >> Воведничар: Но, јас сум всушност ќе да го расчисти за една секунда. 613 00:27:05,930 --> 00:27:09,160 Јас сум прв ќе се отвори само sumfuntion.o. 614 00:27:09,160 --> 00:27:11,170 >> ПУБЛИКАТА: Ти го спелува погрешно прв пат. 615 00:27:11,170 --> 00:27:12,420 >> Воведничар: Classic. 616 00:27:12,420 --> 00:27:14,790 617 00:27:14,790 --> 00:27:15,480 Збирот - 618 00:27:15,480 --> 00:27:16,680 тоа е тешко зборот, иако. 619 00:27:16,680 --> 00:27:19,050 Сакате бидете изненадени. 620 00:27:19,050 --> 00:27:21,560 Добро, така што ова е sumfunction.o. 621 00:27:21,560 --> 00:27:24,494 622 00:27:24,494 --> 00:27:26,220 Јас дури и не би можеле да ти кажам. 623 00:27:26,220 --> 00:27:30,250 Има многу нули, јасно многу на нули и има некои други 624 00:27:30,250 --> 00:27:31,930 работи тоа не е нули. 625 00:27:31,930 --> 00:27:33,220 Но најмногу нули. 626 00:27:33,220 --> 00:27:35,120 Изгледа има некои од нив. 627 00:27:35,120 --> 00:27:36,810 Па јасно, ова е тешко да се прочита. 628 00:27:36,810 --> 00:27:39,320 Тоа е бинарен јазик. 629 00:27:39,320 --> 00:27:40,710 >> Ајде сега отворете го - 630 00:27:40,710 --> 00:27:50,190 631 00:27:50,190 --> 00:27:52,350 што? 632 00:27:52,350 --> 00:27:53,600 Што правам погрешно? 633 00:27:53,600 --> 00:27:56,955 634 00:27:56,955 --> 00:27:58,434 Никако не можев да го опишат правилно? 635 00:27:58,434 --> 00:28:09,865 636 00:28:09,865 --> 00:28:11,120 Добро, ова е непријатно. 637 00:28:11,120 --> 00:28:37,560 638 00:28:37,560 --> 00:28:40,158 Ми треба една секунда за да дознаам од она што јас го правам погрешно. 639 00:28:40,158 --> 00:28:46,030 640 00:28:46,030 --> 00:28:49,310 Тоа е една грешка. 641 00:28:49,310 --> 00:28:50,560 Тоа е чудно. 642 00:28:50,560 --> 00:28:58,080 643 00:28:58,080 --> 00:29:01,800 О, тоа е зошто. 644 00:29:01,800 --> 00:29:09,880 >> Одам да се вратиме на нашата почетна еден, за да можеме да се погледне на 645 00:29:09,880 --> 00:29:10,560 објектниот код на оваа. 646 00:29:10,560 --> 00:29:13,390 Бидејќи таму не е навистина се случува да се да биде ништо, кога ние само стави 647 00:29:13,390 --> 00:29:14,640 оние кои и нули внатре 648 00:29:14,640 --> 00:29:29,000 649 00:29:29,000 --> 00:29:30,200 Таму ќе одиме. 650 00:29:30,200 --> 00:29:32,425 Добро, така што секој може да го видите ова. 651 00:29:32,425 --> 00:29:38,130 Оваа функција, како што реков, стави надвор на C линии - 652 00:29:38,130 --> 00:29:39,060 изворниот код линии - 653 00:29:39,060 --> 00:29:41,000 со некои монтаж инструкции. 654 00:29:41,000 --> 00:29:42,760 >> Тука е нашата изворниот код линија. 655 00:29:42,760 --> 00:29:44,910 Тука е една, тука е друг. 656 00:29:44,910 --> 00:29:46,540 Тука е Собранието настава. 657 00:29:46,540 --> 00:29:47,820 Тоа е она што тие изгледаат. 658 00:29:47,820 --> 00:29:49,010 Собранието инструкции - 659 00:29:49,010 --> 00:29:51,530 можете да дознаете повеќе за овие, ако се други CS класи, но тие се 660 00:29:51,530 --> 00:29:53,500 генерално упатство. 661 00:29:53,500 --> 00:29:57,940 А потоа извор и дестинација. 662 00:29:57,940 --> 00:30:02,740 >> А потоа во текот тука е бинарен код кој одговара дека собранието 663 00:30:02,740 --> 00:30:04,940 настава. 664 00:30:04,940 --> 00:30:09,760 Па како што можете да видите, оваа сума функција, на крајот на ден, три 665 00:30:09,760 --> 00:30:10,950 монтаж инструкции. 666 00:30:10,950 --> 00:30:12,870 Само три. 667 00:30:12,870 --> 00:30:14,180 Еден МОВ - 668 00:30:14,180 --> 00:30:16,740 оваа m-o-v стои за движење. 669 00:30:16,740 --> 00:30:17,780 Додадете залага за Add. 670 00:30:17,780 --> 00:30:20,440 И r-е-т се залага за враќање. 671 00:30:20,440 --> 00:30:22,540 Значи една MOV, еден додаток, една пријава. 672 00:30:22,540 --> 00:30:27,970 И овие, овде, се нули и оние кои одговараат на овој код. 673 00:30:27,970 --> 00:30:31,100 >> Па оние нули и оние, ако знаете оние, вие само може да се стави 674 00:30:31,100 --> 00:30:32,140 оние директно внатре 675 00:30:32,140 --> 00:30:34,130 А потоа тоа ќе го стори исто точно нешто. 676 00:30:34,130 --> 00:30:37,260 Бидејќи, на крајот на денот, сите сте извршување е долга серија на 677 00:30:37,260 --> 00:30:38,480 нули и оние. 678 00:30:38,480 --> 00:30:40,700 И тоа е она што вашиот код навистина е. 679 00:30:40,700 --> 00:30:41,770 >> А причината - 680 00:30:41,770 --> 00:30:43,680 ајде да погледнеме една работа. 681 00:30:43,680 --> 00:30:45,440 Дали имам makefile отворен? 682 00:30:45,440 --> 00:30:48,510 Значи, ако се вративме да цртичка нула, нула до тука - 683 00:30:48,510 --> 00:30:52,220 684 00:30:52,220 --> 00:30:57,300 Жал ми е, капитал о, капитал o нула, не е нула, нула. 685 00:30:57,300 --> 00:31:01,810 И ние го направи, тоа би уште работат на истиот. 686 00:31:01,810 --> 00:31:05,420 Но сега ќе забележите дека постојат многу повеќе монтаж инструкции. 687 00:31:05,420 --> 00:31:09,090 Тоа е затоа што, повторно, го прашав компајлерот не да се направи било оптимизација. 688 00:31:09,090 --> 00:31:12,800 >> Па јас уште може да ги преземе сите на овие нули и оние, и ги фрлаат во, 689 00:31:12,800 --> 00:31:13,390 и дека ќе работи. 690 00:31:13,390 --> 00:31:15,850 Јас само го направи оптимизации, бидејќи тоа е малку полесно, тогаш, 691 00:31:15,850 --> 00:31:17,310 да се напише дека низа. 692 00:31:17,310 --> 00:31:19,730 Но, ова ќе работи само како добро. 693 00:31:19,730 --> 00:31:24,460 >> Добро, ние ќе треба да направите една конечна нешто, бидејќи мислам дека е најкул дел. 694 00:31:24,460 --> 00:31:27,410 Иако сите е јасно веќе разнесени и без зборови. 695 00:31:27,410 --> 00:31:30,520 696 00:31:30,520 --> 00:31:31,670 Нашите умови се разнесени. 697 00:31:31,670 --> 00:31:32,920 [Нечујни] 698 00:31:32,920 --> 00:31:47,580 699 00:31:47,580 --> 00:31:51,520 >> Значи, овие се од различни CS класа, што е супер интересно, 700 00:31:51,520 --> 00:31:52,970 дека сум зел - 701 00:31:52,970 --> 00:31:54,140 CS61. 702 00:31:54,140 --> 00:31:55,910 Силно ве охрабруваме да ја земе. 703 00:31:55,910 --> 00:31:58,990 Но кул дел за овој факт, дека работи се само нули и оние, 704 00:31:58,990 --> 00:32:01,270 се дека сè е нули и оние. 705 00:32:01,270 --> 00:32:05,330 >> Па може да се земе датотека која има точно нули и оние што сакате 706 00:32:05,330 --> 00:32:10,390 некаде во него, и го користат тој дел од нули и оние како збир функција. 707 00:32:10,390 --> 00:32:11,480 >> Што мислам кога го велам тоа? 708 00:32:11,480 --> 00:32:15,755 Мислам може да се земе слика датотека што има добра серија од нули и 709 00:32:15,755 --> 00:32:17,120 оние, што се печати нешто до слика. 710 00:32:17,120 --> 00:32:20,070 И една програма може да се протолкува е слика, но можете да го протолкува, ако 711 00:32:20,070 --> 00:32:22,040 сакате, како збир функција. 712 00:32:22,040 --> 00:32:27,010 >> Значи, ако сакаме да се отвори, за На пример, оваа слика. 713 00:32:27,010 --> 00:32:37,440 Ајде да одиме, Hello Kitty. 714 00:32:37,440 --> 00:32:38,810 Прекрасни малку сликата. 715 00:32:38,810 --> 00:32:42,260 Тука постои стрингот на нули и оние. 716 00:32:42,260 --> 00:32:45,500 Оние 72 нули и оние постојат во оваа слика. 717 00:32:45,500 --> 00:32:47,695 >> Значи она што може да направи, тогаш, е да се пишуваат - 718 00:32:47,695 --> 00:32:50,510 719 00:32:50,510 --> 00:32:51,760 Морам да се сети каде и да се. 720 00:32:51,760 --> 00:32:54,550 721 00:32:54,550 --> 00:32:55,720 Ќе најдете дека во една секунда. 722 00:32:55,720 --> 00:32:57,840 Но, ние не - 723 00:32:57,840 --> 00:32:59,440 дозволете ми да дознаете каде се тие. 724 00:32:59,440 --> 00:33:00,020 Еден сек. 725 00:33:00,020 --> 00:33:01,270 Ајде да се направи - 726 00:33:01,270 --> 00:33:05,800 727 00:33:05,800 --> 00:33:07,240 >> ПУБЛИКАТА: [нечујни]. 728 00:33:07,240 --> 00:33:08,490 >> Воведничар: Благодарам. 729 00:33:08,490 --> 00:33:24,240 730 00:33:24,240 --> 00:33:28,740 Значи, ако ние се изврши оваа програма, која наместо чита во датотека, тогаш тоа оди 731 00:33:28,740 --> 00:33:33,160 на овој индекс во датотека. 732 00:33:33,160 --> 00:33:35,500 А потоа, повторно, исто како mysum, зема два броја. 733 00:33:35,500 --> 00:33:41,410 Ние можеме да додадете броеви иста како што го правевте и претходно, кој оди да се 734 00:33:41,410 --> 00:33:44,850 ви покаже како фактот дека, на крајот на ден, сите овие нешта се 735 00:33:44,850 --> 00:33:45,350 нули и оние. 736 00:33:45,350 --> 00:33:48,170 И тоа е само како ке го одберете да ги интерпретира. 737 00:33:48,170 --> 00:33:50,770 >> И ако навистина изгледа во оваа слика - 738 00:33:50,770 --> 00:33:52,930 ајде да зумирате малку. 739 00:33:52,930 --> 00:33:53,720 Секој може да го видите? 740 00:33:53,720 --> 00:33:57,570 Ќе забележите токму тука, има некои чудни флеки. 741 00:33:57,570 --> 00:34:00,130 742 00:34:00,130 --> 00:34:02,290 Ајде да одиме - ова е на оригиналната слика. 743 00:34:02,290 --> 00:34:04,540 Ќе забележите овде нема флеки. 744 00:34:04,540 --> 00:34:08,420 Тоа е код за сума функција, е дека малку дупка право таму. 745 00:34:08,420 --> 00:34:13,449 >> А всушност, повторно, ако научат повеќе за тоа, ќе сфатите дека ова 746 00:34:13,449 --> 00:34:18,270 Hello Kitty, која има дури и поголем зацапвам, има код кој може да преземе 747 00:34:18,270 --> 00:34:21,800 компјутер, ако тоа не е заштитена соодветно. 748 00:34:21,800 --> 00:34:23,920 Така што всушност може да работи тоа. 749 00:34:23,920 --> 00:34:25,380 Јас не одам за да го стартувате сега. 750 00:34:25,380 --> 00:34:30,600 Но можете да ја извршите оваа Здраво Писе на сликата, и тоа може да 751 00:34:30,600 --> 00:34:32,429 преземе вашиот компјутер. 752 00:34:32,429 --> 00:34:35,159 >> Па тоа е сите за демонстрација. 753 00:34:35,159 --> 00:34:38,560 Дали некој има било какви прашања, коментари, проблеми? 754 00:34:38,560 --> 00:34:39,515 Мислам дека овој материјал е фасцинантен. 755 00:34:39,515 --> 00:34:41,500 Тоа ме инспирираше да дознаете повеќе. 756 00:34:41,500 --> 00:34:44,980 Силно препорачувам, ако сте заинтересирани на сите на CS, да разговара со мене. 757 00:34:44,980 --> 00:34:50,250 Иако јас сум социјални студии Концентратор, јас сум CS, средно, па 758 00:34:50,250 --> 00:34:52,340 Јас сеуште знаат малку. 759 00:34:52,340 --> 00:34:53,810 Но јас сигурно знаете што класи треба да земе. 760 00:34:53,810 --> 00:34:57,940 Мислам дека сето тоа е навистина интересно, и јас ве охрабруваме, секако, да се 761 00:34:57,940 --> 00:35:00,330 научат повеќе, ако сте заинтересирани. 762 00:35:00,330 --> 00:35:02,090 >> Добро, имам една конечна нешто. 763 00:35:02,090 --> 00:35:05,530 764 00:35:05,530 --> 00:35:05,870 Жал. 765 00:35:05,870 --> 00:35:06,460 Било какви прашања? 766 00:35:06,460 --> 00:35:10,010 Јас не се откажеш да почека ако некој имаше било какви прашања во врска со тоа. 767 00:35:10,010 --> 00:35:13,220 768 00:35:13,220 --> 00:35:16,900 >> Дали некој ќе биде на CS концентратор? 769 00:35:16,900 --> 00:35:18,580 Или размислување за тоа? 770 00:35:18,580 --> 00:35:20,730 Еден, два, три, четири. 771 00:35:20,730 --> 00:35:21,620 Еден - само еден. 772 00:35:21,620 --> 00:35:24,680 Ана е единствениот рака тоа е покрена авторитативно. 773 00:35:24,680 --> 00:35:27,640 774 00:35:27,640 --> 00:35:29,390 Добро, тоа е кул. 775 00:35:29,390 --> 00:35:30,110 Асам, што ви се случува да се направи? 776 00:35:30,110 --> 00:35:33,220 >> ПУБЛИКАТА: [нечујни]. 777 00:35:33,220 --> 00:35:33,910 >> Воведничар: Константин? 778 00:35:33,910 --> 00:35:34,990 >> Публика: физика. 779 00:35:34,990 --> 00:35:36,720 >> Воведничар: Леле, тоа беше брзо. 780 00:35:36,720 --> 00:35:40,770 Сте имале лошо искуство во CS50? 781 00:35:40,770 --> 00:35:42,015 [Нечујни], што ви се случува да се направи? 782 00:35:42,015 --> 00:35:42,980 >> Публика: Јас немам идеја. 783 00:35:42,980 --> 00:35:43,924 >> Воведничар: Курт? 784 00:35:43,924 --> 00:35:45,900 >> ПУБЛИКАТА: ECON или CS. 785 00:35:45,900 --> 00:35:46,910 >> Воведничар: ик.на или CS. 786 00:35:46,910 --> 00:35:47,840 Том? 787 00:35:47,840 --> 00:35:48,385 >> Публика: Јас го правам Стат. 788 00:35:48,385 --> 00:35:48,950 >> Воведничар: Стат? 789 00:35:48,950 --> 00:35:50,100 OK. 790 00:35:50,100 --> 00:35:51,000 Што си ти? 791 00:35:51,000 --> 00:35:51,310 >> Публика: ме? 792 00:35:51,310 --> 00:35:51,750 >> Воведничар: Да. 793 00:35:51,750 --> 00:35:52,190 >> Публика: Стат. 794 00:35:52,190 --> 00:35:52,520 >> Воведничар: Стат. 795 00:35:52,520 --> 00:35:53,500 Ох, таму да одите. 796 00:35:53,500 --> 00:35:55,200 Том, разговарајте со Alden. 797 00:35:55,200 --> 00:35:56,932 Емили, што си ти? 798 00:35:56,932 --> 00:35:57,396 >> Публика: биомедицински - 799 00:35:57,396 --> 00:36:00,178 >> Воведничар: Дали сте во овој дел? 800 00:36:00,178 --> 00:36:03,040 >> ПУБЛИКАТА: Не 801 00:36:03,040 --> 00:36:04,530 >> ЗВУЧНИК: Добро, тоа е Емили. 802 00:36:04,530 --> 00:36:05,670 Таа ми е пријател. 803 00:36:05,670 --> 00:36:10,080 Јасно е дека не дека е добар на пријател затоа што таа ми дава тешко време. 804 00:36:10,080 --> 00:36:13,223 Може да биде поубаво за мене пред на сите, моето студент - 805 00:36:13,223 --> 00:36:14,580 >> Публика: Јас го правам вашиот Q водич. 806 00:36:14,580 --> 00:36:14,870 >> Воведничар: Навистина? 807 00:36:14,870 --> 00:36:15,510 Ух ох. 808 00:36:15,510 --> 00:36:17,224 Добро, ти си неверојатен. 809 00:36:17,224 --> 00:36:19,380 Те сакам толку многу. 810 00:36:19,380 --> 00:36:20,600 О момче. 811 00:36:20,600 --> 00:36:28,320 >> Како и да е, јас, минатата ноќ, како и сè - 812 00:36:28,320 --> 00:36:32,220 Сигурен сум дека сите се чини дека навистина истакна во моментов. 813 00:36:32,220 --> 00:36:35,970 Не знам, се бруцош - се вие момци чувствувате под стрес? 814 00:36:35,970 --> 00:36:36,855 Јас сум чувство стрес. 815 00:36:36,855 --> 00:36:37,980 Тоа беше како, си одам дома за Денот на благодарноста. 816 00:36:37,980 --> 00:36:40,660 Ти си како, јас ќе одам да направите сите овие работи. 817 00:36:40,660 --> 00:36:41,530 >> ПУБЛИКАТА: Тоа е толку различни. 818 00:36:41,530 --> 00:36:42,560 >> Воведничар: Да, и ќе се врати. 819 00:36:42,560 --> 00:36:45,290 Џеф, што не се чувствуваат на овој начин? 820 00:36:45,290 --> 00:36:46,610 >> Публика: Јас само мислев Јас би го сторила малку. 821 00:36:46,610 --> 00:36:48,660 >> ЗВУЧНИК: Добро, одлично. 822 00:36:48,660 --> 00:36:51,650 Па ќе се вратам, и јас не треба направи ништо. 823 00:36:51,650 --> 00:36:53,260 И сето тоа е супер стресни. 824 00:36:53,260 --> 00:36:55,640 И јас сум загрижен, искрено загрижени, за тоа дали или не сум 825 00:36:55,640 --> 00:36:57,380 ќе ја заврши сè што треба. 826 00:36:57,380 --> 00:37:01,750 Но, минатата ноќ, јас не сум бил под стрес, Јас бев само малку тажен. 827 00:37:01,750 --> 00:37:04,520 Па напишав во мојот дневник за она што јас бев тажен за. 828 00:37:04,520 --> 00:37:08,020 И јас бев тажен за овој дел во оваа класа доаѓа до крајот. 829 00:37:08,020 --> 00:37:11,100 >> Па јас бев само ќе прочитате за вас момци малку програмка на мојот весник, 830 00:37:11,100 --> 00:37:12,950 од минатата ноќ. 831 00:37:12,950 --> 00:37:17,400 Може ли да добијам некои салфетки, некои ткива од Том? 832 00:37:17,400 --> 00:37:18,040 Не, јас ќе одам да плаче. 833 00:37:18,040 --> 00:37:19,720 Јас не плачат. 834 00:37:19,720 --> 00:37:22,030 Не дека не можете да плаче, Јас само не плачат. 835 00:37:22,030 --> 00:37:24,040 Јас дури и не знам дали мојот солза жлезди работел - солза канали. 836 00:37:24,040 --> 00:37:25,630 Не сум плачел во долго време. 837 00:37:25,630 --> 00:37:26,510 >> ПУБЛИКАТА: [нечујни]. 838 00:37:26,510 --> 00:37:28,920 >> ЗВУЧНИК: Добро, благодарам. 839 00:37:28,920 --> 00:37:30,070 Добро, тука е малку предговорот - 840 00:37:30,070 --> 00:37:32,480 има некои други делови на мојот весник влез, бидејќи јас се обидувам да весник секој 841 00:37:32,480 --> 00:37:33,600 ноќта пред добив во кревет. 842 00:37:33,600 --> 00:37:34,900 Силно препорачувам journaling. 843 00:37:34,900 --> 00:37:38,600 Тоа ви помага да се процесира нешта, и, исто така, да биде многу пофалници од твојот ден. 844 00:37:38,600 --> 00:37:43,063 И тоа го прави многу полесно да се погледне назад на вашиот ден и да сфати дека 845 00:37:43,063 --> 00:37:44,240 имаше многу добри работи што се случило. 846 00:37:44,240 --> 00:37:47,240 Дури и ако сметаш дека навистина истакна ноќе или навистина вознемирени или 847 00:37:47,240 --> 00:37:49,022 навистина тажно или замор. 848 00:37:49,022 --> 00:37:50,272 >> Ох, Боже. 849 00:37:50,272 --> 00:37:52,546 850 00:37:52,546 --> 00:37:54,400 Јас дури и не знам дали тоа е напишано дека добро, бидејќи јас не го лекторирани. 851 00:37:54,400 --> 00:37:55,780 Но ние ќе го прочита. 852 00:37:55,780 --> 00:37:59,950 Јас обично не читаат мојот списание, очигледно. 853 00:37:59,950 --> 00:38:03,720 >> "Утре, јас ќе научам моите конечна CS50 дел од годината. 854 00:38:03,720 --> 00:38:05,860 Тоа е лудо колку брзо времето лета. 855 00:38:05,860 --> 00:38:09,900 Сепак, јас бев вчудоневиден од тоа колку различни моето искуство настава оваа година беше 856 00:38:09,900 --> 00:38:11,365 од кога бев сафомор. 857 00:38:11,365 --> 00:38:14,120 За почеток, јас дефинитивно знаат материјалот подобро. 858 00:38:14,120 --> 00:38:16,820 Но, не ви ја кажав мојата првата група на студенти кои. 859 00:38:16,820 --> 00:38:20,030 Уште поважно, сепак, сфатив дека радоста што доаѓа од стоење 860 00:38:20,030 --> 00:38:23,160 до пред една соба на она што започнува како странци, но завршува како, на 861 00:38:23,160 --> 00:38:27,150 и најмалку важно, пријатели на Фејсбук, е не е прва година среќа. 862 00:38:27,150 --> 00:38:29,970 Напротив, тоа е од знаејќи дека во некои мали начин, ти си помагаат 863 00:38:29,970 --> 00:38:32,980 талентирани, внимателен, прекрасен, и страсни луѓе да научат малку повеќе 864 00:38:32,980 --> 00:38:34,750 за компјутерски науки. 865 00:38:34,750 --> 00:38:37,480 >> Ти си префрлаат дека сијалицата само малку во своите сокет, така што тоа е во можност 866 00:38:37,480 --> 00:38:42,120 да блесне посветла од вас, или тие, може да се замисли на семестар на проектот. 867 00:38:42,120 --> 00:38:45,390 Ти си помагаат претворат оние стемнето наопаку надолу и поставување на прашања кои 868 00:38:45,390 --> 00:38:49,240 обезбеди поддршка, но сепак овозможи студентите да застане на сопствените. 869 00:38:49,240 --> 00:38:52,190 >> Тоа сигурно не е претерано да се велат дека овој дел е мојата омилена 870 00:38:52,190 --> 00:38:53,190 дел од седмицата. 871 00:38:53,190 --> 00:38:57,930 Или дури дека се одлучувам да кажам, тоа е сите, во 05:30 секоја недела, знаејќи 872 00:38:57,930 --> 00:39:00,640 дека тоа ќе биде премногу долго додека не се сретнеме повторно. 873 00:39:00,640 --> 00:39:02,740 >> Сепак, јас сум неверојатно благодарни на сите што ми даде овој 874 00:39:02,740 --> 00:39:05,010 можност да му ја врати на другите. 875 00:39:05,010 --> 00:39:07,340 Дејвид, за неговото трпение и доверба. 876 00:39:07,340 --> 00:39:11,040 На филмот и производство екипажот, за што ме погледне малку почит. 877 00:39:11,040 --> 00:39:15,380 И што е најважно, до моите ученици, без кои немам никаква причина да се 878 00:39:15,380 --> 00:39:17,890 поминуваат 10 часа пронајдат најдобрите начин да се привлече покажувачи, или нокаутирам 879 00:39:17,890 --> 00:39:20,330 табела на делфини, преку JavaScript. 880 00:39:20,330 --> 00:39:22,620 Како и секогаш, тоа е благослов. " 881 00:39:22,620 --> 00:39:25,420 >> Така да со тоа, ви благодарам момци. 882 00:39:25,420 --> 00:39:29,000 Јас ќе те видат сите на саемот CS50, и на Hackathon, ако сте таму. 883 00:39:29,000 --> 00:39:32,020 И ако имате прашања, јас ќе се држи околу додека не постојат повеќе. 884 00:39:32,020 --> 00:39:33,760 Но јас ви се заблагодарам момци за прекрасен година. 885 00:39:33,760 --> 00:39:37,290 >> [Аплауз] 886 00:39:37,290 --> 00:39:38,540 >> Воведничар: Јас би можеле да плаче. 887 00:39:38,540 --> 00:39:40,800