[Powered by Google Translate] SPEAKER 1: Това е CS50. Така че аз бях къде сте сега преди няколко години, и когато бях първокурсник в време, не е наистина по този път за правене на компютри науката за правене на инженерство. Всъщност, аз дойдох на това място като правителство концентратор. Съм бил в гимназията, едно дете, което харесва неща като история. Ми хареса конституционно право, вид на английски език и математика, така че един вид добре закръглени, но не е задължително да знаят неща, които не са били преподавани в гимназията. И така първата година, имах този трепет, при който въпреки че харесва компютри, компютърни игри и други подобни, разбира се никога не съм мислила за себе си като компютърен човек, учен компютър и честно казано, мислех, че моите приятели в гимназията, които са приемали компютър науката са малко - отрепки. И все пак, когато дойдох тук на територията на колежа, имаше този курс, CS50, и в време, той спечели репутацията наистина е нещо, което да се пази. Това беше добър курс. Това е забавно разбира се. Но трябваше да се получи в действителност, че крак във вратата. И дори аз не преминава тази година първокурсниците праг. И аз отидох на пътя ми е концентратор на правителството, преминавайки през , тъй като много от предпоставките, колкото можех, пресича се брои неща за поколение изд или ядро ​​и други подобни, а след това второкурсник година, по някаква причина, аз имам смелост да стъпка крак в Science Center B, където CS50. Много известен компютърният специалист и учен от името на Брайън-ред преподаването тук тази година, а дори и тогава, бях само желание действително да попълнят картата ми проучване, като този клас Pass / Fail. Гледах около мен, и реших, че всеки в тази стая трябва да знаете начин за компютърни науки, за програмиране, за компютрите. Всеки трябва да се програмиране в тази стая, тъй като те са били 12, но наистина, , че случаят не е такъв. И така, в последния ден, петата понеделник на семестър, че вземам този скок и промяна от прохода / не клас писмо, и в крайна сметка промяна на моя концентрация, че същия ден на компютърните науки. Сега това не е нашата цел в този клас, да се превърне в компютъра науката концентратори, но наистина, за да се предложи, че има тази възможност в тази област и в други области, с които може да бъде доста непозната, като се има предвид, че висшите училища обикновено следват доста стандартни учебните програми път, но за рисков, през CS50, в нови води. И ако сте седнали тук днес мисля, че не всъщност не принадлежи, така че правя най-много на хората от дясно и от ляво. Всъщност, миналата година, 76% от учениците в този клас не е имал предишен опит. Така че, противно на това, което може би си мислите, повечето от хората около вас седят днес не, всъщност, има предишен опит. 18% са един CS клас, а 6% са два или повече. В същото време, ние молим нашите студенти всяка година, за да се описват в термините на ниво на комфорт, и това е - има не една дефиниция на това. Можете просто да го знаете, ако не сте много удобно в CS50. И миналата година имахме 55% през тази зелена парче пай тук, самостоятелно, описващ по-удобни студенти, които искрено бяхме никаква представа, защо пазаруват хода на този първи ден, но същия 55% остават при нас, докато края план, както и 35%, които са някъде между тези повече удобни и такива, които са по-удобни. Така че това, което е компютърни науки? Е, в гимназията, и наистина, по-общо там тези дни, е това усещане или това погрешно схващане, че компютърните науки програмиране. И това е абсолютно един аспект на компютърните науки, но програмиране, каквото и да е език, наистина е просто един инструмент, че компютърни специалисти използват за решаване на проблеми в областта на компютърните науки или все по-често тези дни, във физическите науки, природни науки, в медицината, в областта на хуманитарните науки, да се анализират големи набори от данни. Навсякъде вече има компютър и данни, има възможност да се прилагат научени уроци в клас като CS50. Така че нека да реши проблем, който учен компютър може да стане решаване и се опитайте да се въведе някакъв жаргон, някои концептуална рамка, около това, което биха могли да бъдат по друг начин някои доста абстрактни идеи. Така че това е телефон. Вие не виждате тези неща твърде често. Колежът все още изглежда да има в къщи и общежития, но назад в деня, когато искате да използвате телефона като това, не е имало адрес на електронна книга във вашия мобилен телефон. , По-скоро извади нещо, известно като телефонен указател и тези телефонни книги имаше около 1000 страници обикновено. Те са избрани от А до Я, и просто трябваше да се намери правилната страница лицето, което търсите, за да намерят своето име и телефонен номер. Сега как да отида, за да търси някой в ​​тази книга? Да предположим, че целта ми е да дам моя приятел Майк Смит повикване. Е, как мога да отида за намиране на Майк Смит? Е, много разумен подход, ако е наивен и неефективна, ще бъде започнат тук, и да започне обръщане на четвърта страница на страница пет, шеста страница и да сортирате линейно, по права линия, чрез този телефонния указател, и дори макар, че това ще бъде изключително досаден, ако Майк Смит е в това книга, аз съм в крайна сметка ще се свържа с него, когато най-накрая обърна на S раздел на тази книга. Сега, разбира се, не трябва да бъде учен на компютъра, за да знаем, че това е глупав начин за решаване на този проблем. Какво ще направи типичен човешко същество? Браво. Така че ще обърнете към средата, нали? Така че по-флип приблизително към средата, погледнете тук, и аз като че ли да се намери в раздел М. Добре, така че M явно не е това, което търся. Майк е на дясно, така да се каже, на този раздел, и както някои от вас имат виждали преди, може буквално да продължим да откъсне това проблем в половина. Наистина не трябва да бъде впечатлен. Го Събарях шева всъщност не е толкова трудно. Истинските хора го правят по този начин, но по-шев, Сега имаме два проблема. Всяка от които е два пъти по-голям, и ние можем буквално хвърлят, че половината от проблем с кола. Сега сме оставяли не с 1000 страници, но да речем, 500. И сега какво да правя? Е, типичен човек ще отиде приблизително в средата отново, и аз намирам себе си в раздел R, не е толкова много. Така че отново, този проблем може да се скъса на половина. Благодаря. Така че сега имат само около 250 страници, и мога да го направя отново, и отново, и отново, и си отиват от 125 надолу до около 60, до 30, до 15, и така нататък. И накрая, аз ще се намален на една от страниците S, на която, ако той е в телефонния указател, Майк Смит трябва да бъде. Сега това е очевидно доста разумна алгоритъм, и това е за еднократна употреба алгоритъм в този случай, но какво можем да сортирате отнеме от това? Е, първия подход, правилно, ако е наивен, макар че, това е, може да бъде описана от тази права линия. Така че, ако на х-оста, тук ние казваме, това е размерът на проблема. Така че, като X-ос върви надясно, проблемът става по-голям. Какво означава това да бъде по-голям? В контекста на този проблем, повече страници в телефонния указател. Има и още нещо, което може да определи количествено. На Y-ос, времето за решаване. Така че, както оста върви нагоре, ние предполагаме, че вероятно ще отнеме повече време. Така че първата подход на линейно търсене от първа страница на страница 1000 е линейна процедура, линеен алгоритъм или процес, и ние можем да я опишем тази права линия. Ако добавите още една страница в телефонния указател, ще в най-лошия случай, вземи ме още една страница флип да намерите Майк Смит. Ако добавите 100 страници, 100 повече обръща, или единици за време. Сега може да бъде малко по-умен с това. Не е нужно да го превърне наистина една страница в даден момент. Мога да направя неща, като две в даден момент или четири наведнъж, но дори и това не е всичко, което фундаментално по-добре. Дори ако това е две в даден момент, да, този вид се движи тази линия се малко, и това означава, че е необходимо по-малко време, като се има предвид, същия брой страници, но това не е фундаментално по-добре. Но какво точно правим, и какво всички от вас правят инстинктивно? Реално постигнатото малко нещо като това, логаритмична време, като проблемът може да расте и расте и расте, но цената на решаване на този проблем, времето, необходимо за решаване на този проблем, не растат почти толкова бързо. Това би било логаритмична крива, регистър на N, където N е само в размера на проблема, броят на страниците в тази телефонния указател. И какво означава това в реално изражение? Е, ако имаме, като 500 души в тази стая точно сега - или по-скоро, ако имаме - смесване метафора - не направи този пример още тази година - така че ако имаме 500 страници в телефона книга, и ние го удвои до 1000, в тази по-интелигентен модел на обръщане към средата, колко по-tearers се предприемат, за да се премине от 500 страници за 1000? Ами, просто една допълнителна страница сълза. Ако ми подаде 2000 страница телефонния указател, не е голяма работа. Аз току-що го скъсаш допълнително време. Така че по-кратко, размера на проблема може да расте много по-бързо от разходите за всъщност да го решите. Сега това е само един такъв алгоритъм. Има и други, можем да решим по същия този начин. И така, защо не правим това - ако ме хумор, макар и тромаво тук Сандърс, давай, всеки, ако може, и се изправи на мястото. Както можете да видите на екрана тук, това е един алгоритъм, процес, компютър програма, ако щете, да бъдат изпълнени от хората, че има само три стъпки. Вече сме на една стъпка, вие сте се изправи. И сега мисля да си номер едно. Това е сегашната си брой. Всеки тук е номер едно. Втора стъпка, двойка заедно с някой, който стои и вашите номера, и след това да се приеме тази сума като новия си брой. Един от вас трябва да седнат, а след това се повтаря. В този момент, все по-малко и по-малко хора трябва да се изправи. Това е мястото, където тя получава по-неудобно. Някой тук, тук. Най-лошото е, вие също трябва да устно смятане пред на стотици Харвард undergrads. Добре, малко бъг тук. Добре, какъв е вашият номер? Девет. Добре. Какво е твоето число? 179. Добре, добре. Така 188. Така че вие ​​може да седнете. Какво е твоето число? 118. Започнете да правите някои умни студент по математика. Добре, 118, 188. Какво друго имаме? 71. 79. Добре. И? 47, който, преподавателския състав, който ни дава колко? 705 е отговорът. И това е, всъщност, точно правилно. Не, ние всъщност са малко разстояние има, но как това трябва да са работили? Какво трябва да се случи? Така на всяка итерация на този алгоритъм, ние започнахме с известен брой на хората, които стояха, и това беше общият брой, N, първо. Тогава половината от вас седна и отидохме до N над две. Тогава половината от вас седна, ще отиде в N над четири, N над осем, над 16 години, и така нататък, докато, въпреки че на разпада на края на теория, имаше всички двойки в балкон, и мецанин и оркестър тук, бихме имали само един самотен човек състояние, с обща стойност, в този случай, на 705. Сега какво означава това, обаче, за времето на работа? Е, мисля, че ако аз, като човек, е направил това ръчно. Щях да започна доста наивно, но правилно с едно, две, три, четири, пет, шест, седем, осем, и т.н.; отнема доста време. Така че мога да направя по-добре, нали? В началното училище, не просто преброй в такива. Разчитаме на двойки. Така две, четири, шест, осем, десет, дванадесет. И това става много по-бързо, но сега фундаментално, чрез вдигане колективната интелигентност на всички в тази зала, можем да постигнем крива много по-скоро това, с което сега, броят на хората в тази стая може да се удвои, още 700 души влизам в тази стая за 1400 души, но това само би ни е нужно още едно повторение на този алгоритъм за решаване. И така, все по-често тези дни, когато имаме тези огромни данни определя в Facebook и Google, и други подобни, това е решаване на проблеми с тази част от прозрение, тази част от интелигентност, която ни позволява все по-често да се направи много, много по-мощни неща с днешните компютри. Ако ви харесва тези неща, може да са видели на Facebook CS50 Ден на собствен пъзел, идва тази събота. Ако бихте искали да участват в нещо подобно, чрез която можете и две, или три, или четири отбора от по четири биха искали за решаване на някои пъзели такива като тази, имате шанс да спечелите някои приказни награди, сред които е Wii, както и някои подарък карти, както и някои други Facebook рушвет тази събота, обяд до 15:00. Отидете да cs50.net/rsvp за такива. И този кадър е на линия, ако искате да си поиграете. Пъзелите тази година да са нови. Може да забележите, в класната стая, също всички камери тази година. Така че не само ще разбира се, да бъде заснет по обичайния начин, CS50 също може да бъде участва в документален филм за висшето образование, който гледа към трансформиращ опит, че един ученик може да има тези дни в студентски курс на обучение. Така че към тези крайни, не само ние ще се снима за това, ние ще се снима , както и за все повече онлайн аудитория, както и, от време на време, тази аудитория тук. Така че ние приветстваме клас тази година нашите Харвард ученици разширяване, завършил училище на дизайна, образование, бизнес училище, Кенеди Училище, в юридическите факултети, както и броя на студентите от "Белмонт", Лексингтън, Нютон и Watertown гимназии. Добре дошли на всички вас. В допълнение, тази година, тъй като може да сте чули, Харвард и Масачузетския технологичен институт, и Бъркли сега са влезли в съвместно партньорство на инициатива, наречена EDX, която е инициатива за отваряне на образование за всички колкото повече хора онлайн и, основно, започнете да правите изследвания на много по-широк мащаб, тъй като за това как хората се учат. И така CS50 ще бъде първи курс на колежа участват в това инициатива, както и, което означава, че ще имате достъп до всички инструменти, още по учебните програми съдържание, всички повече видео съдържание, резултат на това, както и от вчера сутринта, 53 019 души, които имат регистрираха за CS50 заедно с вас тази година в Интернет. Така че, какво означава това, в частност, е, че на учителския състав и имам прекарали съвсем малко време това лято подготвя за есента, както на територията на колежа и на разстояние, така че можем да започнем да се изгради корпус интересно, убедителни, за ангажиране на образователно съдържание, която се фокусира по-специално върху по-интимни транспортните средства на доста сложен материал. Така че, в допълнение към лекции на курса, и раздели, и неща наречените сваляне, които ние ще преразгледа само малко, ние също така ще има тези шорти тази година, които ви позволяват да се ангажират с курса от различен ъгъл, всички заедно. Така че нека да използваме това като възможност да се направи един бърз поглед на този, който обсъжда тази идея на двоичен. Така че по компютърни науки има неща, наречени алгоритми, две от които ние просто се погледнете - тези процедури за решаване на проблеми. Но в края на деня, трябва да представят информация по някакъв начин, и вие трябва да го представляват в начина, по който един компютър може да разбере. И дори, ако наистина не разбирам компютри, и вие сте в че 76% сега, най-вероятно имат някакво неясно чувство, че компютрите някак си се занимават с нули и единици, двоична система, така да се каже. А защо е, че по случая? Е, оказва се, когато компютрите за пръв път, ако е необходимо да представляват информацията, може да го направи с електричество, и въпреки че това е малко на опростяване, много лесен начин за записване на информация или чрез завъртане, че електричеството, в двоичен, така да се каже, или обръщане че електричеството разстояние. Така Бари, ако не би имал нищо против, бихме могли намаляване на осветлението напълно само за миг? Това тук е много безвъзмездно двоична нула. Добре, ако ние се обръщаме светлините, сега Сандърс театър е представлява двоична стойност на един. За съжаление, само с едно малко, само с един набор от светлини, можем само да представляват две числа в света, нула и едно, и би било хубаво, ако компютри може да разчита малко по-високо от това, но наистина, те могат. Така че, остави ме да извадя на екрана тук нашият приятел, Нейт Hardison, който ще даде ни един бърз поглед в течение само на няколко минути тази идея на двоичен. Нейт HARDISON: Обратно, когато сте се научили как да четат и пишат номера, научил за нула до девет цифри. За да напишете цели числа, по-големи от девет, можете да научите, че всичко, което трябваше да направя използва някаква комбинация от тези цифри, тъй като през 52 и 437. Така че този начин на писане номера си има име, десетична бройна система. Защо десетичната? Е, латинския корен на десетична запетая, Deca, означава 10, а когато имаш 10 цифри във вашата система за нотация, 10 става доста специален номер. Нека да погледнем в брой 437, написан в десетична бройна система, за да се разбере защо. Ние можем да скъсаме 437 в 400 плюс 30 плюс 7. Ние можем да го разглобим още повече, така че имаме четири пъти по 100 плюс 3 пъти 10 плюс 7 пъти по 1. не забравяйте, обучение за място, 10s, 100s място, и така нататък? Това е точно там, където идва от. И накрая, можем да видим как ние имаме един куп на правомощията на 10 вградени тук. Имаме 4 пъти от 10 до 2 плюс 3 пъти 10 към 1 плюс 7 пъти от 10 до нулата. Така че сега ви виждам защо 10 е специален номер в десетична бройна система. В действителност, ние имаме име за него. Тя се нарича база, тъй като тя е основата на експонат в нашата аритметика тук. Десетична бройна система не е единственият начин да представляват номера. В действителност, дори ако се отървем от цифрите два през девет, все още можем да представляват всички номера, с които бихме могли с десетична. Така че сега имаме две цифри, нула и едно, две е нашият специален номер, основата на нашата система за нотация. Името на тази бройна система се нарича двоичен, тъй като префикс би означава две. Така че, вместо сега, като тези място, и 10 място, и така нататък, ние Сега имаме тези място, място, две, четири крака място, и така нататък, като нарасна с правомощия на две. Така че нека видим това като направите някои преброяване. Така че нулата е все още нула, а един все още е един. Въпреки това, сега, че ние имаме двама място, вместо на 10, 10 представлява номер две. За да получите три, добавете една, че и да получите 11. Четири, тъй като сега има място, на четири крака, е представена от 100. Five е 101. Шест е 110. Седем е 111. Осем, отново има своето място. Така че това е 1000. И аз мисля, че схващате идеята. SPEAKER 1: Значи това е да се каже какво компютри и какво двоичен всъщност не се различава много от това, което сме се предоставя за някои години, нали? Обратно в началното училище, сте се научили да разчитат именно в мода, която Нейт предложи, но най-вероятно не съм мислил за тъй като факта, че има това тези място, 10s място, и 100s място, и това е доста произволна. И наистина, компютри, просто използвайте този различна база. Но в края на деня, действително физически представлява това понятие на нула и едно, вие очевидно не просто изключване на осветлението и изключване задължително. Вие трябва да го направи в много по скалата на фини зърно. И от фини зърно, може би си спомняте тази глупава малка играчка от детството, Мериносова Вили и тези малки магнитни частици. Така че магнитните частици са нещо, което можете да подравните в няколко различни посоки, може би север-юг или юг-север. И така много на физическите въплъщения на технологията тези дни, които използват двоичен, които използват нули и единици, просто трябва магнетизъм от вътрешната страна подравнява неща нагоре-надолу или надолу-нагоре, като по този начин представлява нула или един, съответно. Така че наистина нека да преминем от абстрактното тук, и да се погледне във вътрешността на това, което е по-традиционен твърдия диск на компютъра. Това се случва да бъде малко по-голям екран, по това, че е от настолен компютър, но лаптопи днес все още имат същата технология, но постепенно се заменя с по-сложни неща, които всъщност не се движат части - вътре, после на твърдия диск. SPEAKER 2: Твърдият диск е мястото, където вашия компютър съхранява по-голямата от неговите постоянни данни. За да направите това, данните пътува от RAM заедно с софтуерни сигнали, които разказват на твърдия диск как да съхраните тези данни. Твърдите вериги диск превеждат тези сигнали в напрежение колебания. Те, на свой ред, контрол на движещите се части на твърдия диск, някои от малкото движещи се части, останали в съвременния компютър. Някои от сигналите контрол на двигателя, която училищата метално покритие плата. Вашите данни се съхранява на тези плата. Други сигнали се движат на четене и запис на главите, за да четат или писане на данни върху плочите. Тази техника е толкова точни, че човешки косъм дори не можеше да мине между ръководителите на въртящите се плочи, но всичко това работи в страхотни скорости. SPEAKER 1: Така че ние сега се фокусирам върху какво всъщност се случва на върха на тези плата по отношение на магнетизма, ние имаме този втори на две външен вид. SPEAKER 3: Нека да разгледаме това, което току-що видяхме по-бавно движение. Когато се изпраща на кратки импулси на електроенергия за четене и запис главата, той се превключва на една малка електромагнитна за част от секундата. Магнитът създава поле, което променя полярността на малко по-малко част от метални частици, които покриват повърхността на всеки поднос. Модел на серия от тези малки, натоварени места на диска представлява едно малко на данни в двоична бройна система използва от компютри. Сега, ако токът се изпраща по един начин чрез четене-запис на главата, областта е поляризирана в една посока. Ако токът се изпраща в обратна посока, поляризация се отпише. Как да получите данни на разстояние от твърдия диск? Просто обръщане на процеса. Така че това е частиците на диска, които получават ток и четене и запис главата се движи. Взети заедно милиони на тези магнитни сегменти, и имаш файл. Сега парчета от един файл могат да бъдат разпръснати по целия плата с кола, нещо като каша от документи на бюрото си. Така специален допълнителен файл следи на мястото, където всичко е. Не ти се иска да има нещо подобно? SPEAKER 1: Точно така. Така че ние имаме тази способност да представят тази информация, номера на на много ниско ниво. Ние имаме физически начин представлява, че едно и също нещо, но ние не можем наистина направете всички, че много от интерес все пак, различна от може би някои аритметика и математика. Ние няма как да представлява до този момент неща, като буквите, , така че ние, хората могат да общуват, използвайки същите тези устройства. Но слава Богу, съществува кодировки, модели от нули и единици , които представляват по-високи конструкции като А и Б, и В, и цели изречения и параграфи, и други подобни. И така, ASCII, което е съкращение, което се отнася до тази система за кодиране, с което една цифра представлява писмо - например, че ние знаем като десетична стойност 65 е известен като главна буква А до компютри. Десетичната стойност от 97 в компютрите е известен като малки на И какво всъщност означава това? Е, въпреки че Нейт, преди малко, само брои от нула до осем, ако можем да продължим да брои до 65, или допълнително до 97, моделът на нули и единици, че ще са изготвени на екрана ще бъде точно какво е компютърът използва, за да представлява буквата А в главни букви, или писмо с малки букви. И наистина, там е цялата схема за това. Това е на пръв поглед, помитаща класацията на кодировки, но ако се съсредоточи само в дясната половина тук, забележете, в това средната колона, имаме тази понятието номера, следвани от буквите. И на върха, имаме 32 и характера Чар, за които 32, цяло число, сега се позовава, е очевидно характер бар пространство. Когато получите характер бар пространство на вашия лаптоп, което сте наистина изпращане на е номер, модел от нули и единици, потока на електроенергия, ако щете, представляващи тези нули и единици, че компютъра интерпретира като знак за интервал на екрана. Удивителен знак е 33. Двойни кавички е 34. И ако ние превъртете надолу, тук надясно, ние виждаме, че 65 е наистина, и 97 е наистина малки. Така че сега имаме тази кодираща схема, можем да започнем да правописа нещата. Всъщност компютри, които обикновено се изразяват в стандартни единици, а не използване на индивидуално малко, което отново не е всичко, което е полезно само представляват нула или един, светлините или изключен, а по-скоро, като се използват последователности от битове. И най-често единица мярка, както вероятно знаете, или най-малко заключи, е един байт. Байт е осем бита, осем нули или тях в един ред. Така че можем да започнем правописа нещата. И така, ако бихме могли, защо не опитате това малко колективно тук? Има осем души в тази зала, които биха желали да излезе на сцената? Трябва да бъде удобно да се появява пред камерата, но вие наистина не се нуждаят да знаят какво се случва, просто все още. Виждам един човек се доброволно тук. Две, три, четири, пет, шест, седем, и как около осем? Хайде нагоре. Така че, за да представлява един байт на хората. Позволете ми да ви 128s място, 64s място, 32s място. Но ние много бързо трябва да се обърне тази. Така че, позволете ми да ви отговарят на всички там. И трябва да бъдат в 128s място по целия път, тук много прилича на стотици или хиляди място ще бъде по-далеч в ляво, искаме най-големият контейнер, за да бъда тук на ляво, както добре. Имаме 64s, 32, 16, 8s, 4S, 2s, и 1s - отлично. Така че сега имаме - добре, можете да ми помогнете. Така че сега имаме - какво е вашето име? Джоан: Джоан. SPEAKER 1: Джоан и аз сега ще съветва тези момчета за това как можем да отидете за правописа нещо. Така че на гърба на техните листа хартия, те имат малко лист измама че няма да ги каже дали те са били представлява нула или един. И защо не, за простота, ние ще представляват нула просто стои там неловко. Много добре. Или един по вдигане на ръка, което представлява един. И нека да видим, ако не можем да се посочат четири фраза характер. Така че продължавайте напред сега, доброволци, и изпълни първия кръг с вдигане на ръка ако сте един, или, ако сте нула. Така че сега имаме тези три ръце нагоре, номер, всички останали са те всъщност представлява? Добре, 67. Защо? Е, бързо здравия разум проверка. 64s място, защото това е един. Това е като един пъти 64 плюс едно две, така че това е 66, плюс 1 пъти 1. Това е плюс 1, така че 67. Така че сега тези момчета са колективно, представляващи 67, което очевидно представлява това, което тук в ASCII? Добре, така C. Добре. Така че сега да се пристъпи към втори кръг. Всеки започва с ръцете си, а след това втори рунд. Всъщност, не е много на ролята тук, предполагам, но ние ще се преструвам. Така втория кръг, повишаване или понижаване на ръцете си. Добре. Аудитория, това, което сме сега? Изразявайки е 83. Така че можете да направите математика. Но за всеки, чиято ръка е до, можете да добавите в номера, който те представляват. Така че сега имаме 83. Да се ​​разшири мамят лист малко, и сега имаме - това може да е очевидно къде отиваме тук, но въпреки това, кръгли три. Добре, кръгли три е добре да отидем там, толкова кръгли, три, какъв е броят на тези момчета, които сега ще представя? Добре, чух 53, който сега представлява - интересен. А защо този вид контра-интуитивно резултат, нали? Ако искаме да представлява пет - всички ние вероятно знаете, когато това се случва - защо не просто повишаване на четири крака и място? Е, ние осъзнаваме, че има разлика, основно, между това как компютър интерпретира тези битове. Ако се опитвате да представлява номер пет, след това абсолютно, ние просто вдигнете ръката си номер четири и повишаване на ръка номер едно. Но ние не представлява номера тук. Контекстът тук на сцената е, че ние сме на знака или символа, и в този контекст, компютърът трябва да осъзнаят, че О, това модел на бита не е сам. Всъщност представлява по-високо ниво концепция. В този случай, азбучен писмо. Така че самият факт, че сега ще представя на пето място с стойност 53 е, защото в ASCII нещо естетически виждат като номер пет се нуждае от модел на бита - Защо? Е, светът просто решили да използват по-ниски числа, нула, една, две, три за това, което изглеждаше доста загадъчни неща. И наистина, това са символи, които не са на клавиатурата. Специални изрази, които се нуждаят от компютър, за да правят интересни неща, но хората всъщност никога не ги въвеждате. Така 53 всъщност представлява пет. Сега само като последна проверка на здрав разум, какъв номер да представляват само за миг? Добре, 48. И наистина, давай, кръгли четири. 16 плюс 32 е наистина 48. И така голям кръг от аплодисменти, ако можехме, за нашите осем доброволци тук. Много добре направено. Която и да е посока е добре. Така че сега ние имаме начин не само на мислене за това как за представяне на данните, и всъщност представлява физически, но също така прави по-висока ниво нещата на върха. И наистина, това ще бъде тема цялата компютърни науки изграждане на повече и по-интересни и сложни неща на върха на сравнително прости идеи - в този случай, само нули и единици. По отношение на това защо това е полезно, добре, въпреки че в курс като този, ние ще се съсредоточим на фундамента и програмиране, и за решаване на проблеми, можете да отидете по компютърни науки в произволен брой посоки. В този случай, това е диаграма, която имате в задната страница на вашия неофициално ръководство за CS в Харвард, един от днешните две разпечатки. Това предполага много различни посоки, в които можете да отидете след Разбира се по този начин - обучение за изкуствен интелект, за графика, за машинно обучение, за самия език. Осъзнай, че има още други пътища. Има по-математически пътеки в областта на компютърните науки. Ако не сте в състояние дори да се вземе нещо като CS50 тази есен, има въвеждащи курсове през пролетта, информатика 1, например, е още един на рампата към този нов свят. Сега, като Освен това в интерес на решаването на проблемите, свързани с курсове, осъзнават CS50 известно време преди да се опита да реши един от тези проблеми, проблем, известен като my.harvard, което много от вас може да се използва за действително магазин за курсове, но ако не, проверете инструмент като този, както и други потомци, че са създали някои от нашите минали студенти и персонал. Но в курсове в Харвард, който е уеб-базиран инструмент, нещо, което ще бъде в състояние на проектиране и внедряване на себе си, както и още други неща, както и до края на семестъра, осъзнавам, че това се основава при отворен набор от данни. В този случай, разбира се, на стоките и дава възможност на учениците в този случай да Разгледайте доста сложен набор от данни. Изрови снощи няколко статистически данни, въз основа на няколко хиляди хора, които са използвали това през последните няколко дни. Ако сте били любопитни да знаят колко курсове приятелите си всъщност са склонни да пазаруват, добре, днес тези данни показват, че 7,6 е средният брой на курсове по списък за пазаруване някого. А сега ще ви дам и статистика на най-голям брой курсове по списък за пазаруване на някого - и ние всички вероятно знаете някой по този начин. 201 е рекорд тази година. Сега някои от нашите бивши студенти и преподаватели, всъщност е сглобен клип нарисува картина за вас от това, което този път по компютърни науки и CS50 себе си. Нека вървим напред и издърпайте нагоре, благодарение на г-н Harvahd тук, видео, произведени от някои от вашите предшественици, ако можем да поддържаме светва за това. [Възпроизвеждане на музика] SPEAKER 1: Нямах представа, че ще се случи. Така че по-сериозен поглед към това, което предстои. Така че от гледна точка на очакванията на този курс, вие наистина се очаква да присъстват или да гледате лекция на курса представя осем проблемни комплекти, вземете две викторини, представя окончателен проект. По отношение на оценките, осъзнавам, че моите коментари на откриването за мине се провали, нещо, което много сърце в CS50 - няма почти достатъчно култура в Харвард се опитва нещо и да рискуват провал. Наистина, имахме броя на учениците, и себе си по-специално, който е бил притеснен за боли GPA, или Б, в нещо като CS50, и възможност да се разбира като този и други курсове портал уводното ниво / не е много недостатъчно оползотворени възможности за това колежа като цяло. И така, моля, знам, дори и аз, включени в този курс първоначално за Pass / Fail кредит сам, и въпреки, че преминаването в края на деня, той е тези пет първите седмици, до пети понеделник на семестъра, което е изключване, което ми позволи да сложи крак в тези нови води, и действително се опитват нещо много непознато и много неприятно за мен по онова време. Така че от гледна точка на това, което ролята на различни ъгли, от които можете да обърнат този курс служи - така лекции. Това е до вас. Ако се занимавате с нас в лицето на това място, наистина, ние знаем, статистически, че около 40% от вас вид идват и си отиват през време на семестъра, а 10% от вас, ние никога няма да види отново след днешния ден. И това е съвършено глоба, да бъда честен. Една от определящите характеристики на CS50 е, че съществуват тези безброй ресурси, някои от които ще дрънкалка чрез само за миг, включително лекции и раздели, както и неща, наречени сваляне, и офис часа, и други подобни, и това е повече ресурси, отколкото типичен студент трябва да имат или биха могли физически да се възползват от, но това е, защото от коренно различни стилове на учене, че всеки студент, тялото се проявява. И така на лекции, основната роля, както аз го виждам не е устно натиснете от доста сложен материал и непременно да доставят цялата тънкостите на основите, които ние ще разгледаме този семестър, но по-скоро, за да се правят такива неща сме правили до този момент вече, тези примери с участието на хора на сцената, се опитват да рисува умствена картина, а също и създавате, смея да кажа, някои от тези запомнящи се моменти, така че дори и като се борят с определени теми, имате тези спомени, като о, въпреки че това е доста абстрактно, математика, аз се изгуби с извършването на едно, като наистина, в края на деня, не е всичко, което се различава за нещо вече знаят. И така, ролята, че лекциите ще служи или лично, тук в Сандърс или онлайн на видео е наистина да се постави на сцената психически за всяка седмица за различните понятия и проблеми, които ние ще се гмурне в. В отношение на високите концепции ниво, повечето от тези думи биха могли да произтичат главата си за момента. И това е добре. Тези от вас, които ще влязат в хода по-удобно ще знаят за някои от тези теми, но обикновено е, че 10% от класа, за които те имат много по-заден план, като AP компютърни науки, програмиране, тъй като те са били 12, осъзнавам, че ще има възможности в раздели и проблем поставя да отидат на по-голяма дълбочина в различни теми, попълване на независимо от пропуските може да се наложи от гимназията или преди фон. По отношение на езиците, да разбере, че това, което езикът, който използваме в CS50 до голяма степен без значение в края на деня. Се случи да използват предимно език, наречен C. Към края на семестър, ще се въведе уеб-ориентирани езици, като PHP и JavaScript. Но ние и другите могат да преподава курс като този в повечето всяка модерна високо ниво на езика - Python, Ruby, а други са доста популярни в наши дни, защото осъзнават, в края на деня, не се учат в тази C. Ти не си обучение PHP или JavaScript. Ще научите как да решават проблеми, независимо дали уеб-базирана, компютърно-базирано или данни ориентирани към себе си, с тях просто като инструменти. Сега по отношение на логистиката, ще използвате нещо, в крайна сметка, наречена CS50 техника. Без значение дали имате Mac, PC, Linux компютър, или нещо подобно, ще имате свободно достъпен софтуер началото на следващата седмица, с които да се използват CS50 техника, виртуална среда, че ще използвате на вашия собствения си компютър, така че вие ​​и всички твои съученици да имат единна Linux работния плот в този случай. Това е проблемът комплекта, обаче, в който наистина ще можете да получите вашите ръце мръсни в курса. И в края на деня, той е проблемът комплекти, мисля, че наистина определят студент в този курс. Осъзнайте, че много от проблемните комплекти ще бъдат пуснати в две издания - стандартно издание, което ние очакваме и насърчаване 90% от клас да се потопите в. Но ние също така пусна някои проблемни групи в така наречените хакерски издания, и вие Знам, че е хакер издание, защото на всяка страница с воден знак, казва хакер издание върху него. И това е за тази демографска група от вас, които имат AP компютърни науки с 10 година на програмирането под колана си и се стремят да попълнят тези пропуски, и да имат по-скоро формално, отколкото самоук обучение, може би, да разбере, , че е налице много съществени демографски в класа, който има точно, че една и съща цел. Ще има пет края на ден. Проблем набори обикновено се дължат в четвъртък, но вие можете да разширите пет от тези срокове, използващи тези неща, наречени края на ден, а ние ще спаднат най-ниската оценка в края на семестъра, на данни в учебната програма. Но друга определяща характеристика на CS50 през годините се превърна в офис час, възможност, че сте видели визуално в снимки преди малко, в който ние се събираме по-рано в залите Трапезария в къщата, преди това в мазето на научен център, а тази година в Annenberg антре, четири нощи в седмицата 20:00-23:00, където ще има много споделен опит работи, бори чрез някои проблеми, но със значително структура за подкрепа на място. Всъщност начинът, по който това ще работи, е, че ще се стигне до Annenberg ако имате някакъв въпрос през седмицата. Ще донесе лаптопа си, ще седнем, вземете някаква храна, и вие ще влезете в CS50 обсъждане, уеб-базирана програма, която преподавателския състав разработват, които ще ви позволи да публикувате въпроси и да видим followups в типичния смисъл на думата дискусионен форум, използването на етикети и други подобни, и авто-пълна да търсят данни. Но вие също така ще бъде в състояние да, по време на час на работното време, имат си въпроси ескалира до истински човешки същества. Всъщност, целта в крайна сметка е, така че, ние започваме да се изгради с течение на хода на семестъра корпус на надяваме наистина полезна информация, общи отговори на общи въпроси, така че можете и сами да решават проблеми и да се отлепва възможно най-бързо, като същевременно преподаването персонал - обикновено 20% до 30% от учебните сътрудници и разбира асистенти по отношение на персонала наведнъж. Ние ще имаме това, което се нарича CS50 посрещач в Аненберг, и когато определи, че, знаеш ли какво? Този въпрос, ние наистина се отговори ефективно онлайн. Ние трябва да видим вашия компютър. Ние искаме да разговаряме ти един на един. Вие сте наистина се борят, и затова вие искате да говорите един на един заедно с някого, ще бъдат изпратени за посрещане CS50, стопанство за преподаване колега, буквално, IPOD, че разполага с имената на учениците на един страна, преподаване на имената на персонала, от друга. Ние ще изискваме Вашето име, последвано от името на преподавателския състав и екрана на компютъра ще започне да мига, заявявайки, моля, отида да видя Алис или моля отида да видя Боб на масата на персонала. И така, по този начин, ние ще бъде в състояние да изпрати нещата толкова ефективно, колкото е възможно, както и да ви води към решения по-лесно. В раздели, те ще бъдат възможностите за по-интимни ръце възможности с един от сътрудници на преподаване и 12 16 или на съучениците си, в която всяка седмица, ние ще имаме проблеми в проблем, , които да зададете броя на концептуални въпроси, както и броя на хапят по големина програмиране на въпроси, които бихте могли да разбера по своему, и може да работят по своему, но в контекста на раздел, ние ще работим през колективно някои от тези проблеми и да отиде там, където разговора ни отвежда. В допълнение, в раздел ще имате възможности за преглед на представените от домашно, което сте направили, съучениците си, понякога анонимни, винаги от неучастие, ако искате да споделите работата, която сте подали. Така че това наистина ще бъде в две посоки разговор, и възможност за преразгледа собствената си работа в много по-динамичен смисъл, а не просто търси в PDF или разпечатка и да мисля за това в продължение на няколко секунди и не е задължително усвояването на обратна връзка, че преподавателския състав. И вие ще се използва инструмент, наречен CS50 пространства. За незапознатите, това е език, известен като C горе в ляво, и вие ще получите да знаете това с течение на времето, но това е уеб-базирана помощна програма, че ние ще използване в секцията, която ще позволи на вас и вашите 15 или съученици да влезете с преподаване сътрудник в предната част на стаята. Вие ще бъдете в състояние да пишат код в този прозорец. Ще можете да говорите по електронен път, ако не сте всъщност в раздел точно този момент, и вашите колеги преподаване, когато дойде време да обсъждане на Алис или разтвор на Боб в клас, сътрудник на преподаване да щракнете върху бутона, и готово, проект на екрана, каквото и да е студент работя в този конкретен момент. Така че за тези от вас, имам приятели, които са взели CS50 в миналото, да разбере, че части са значително рестартира през тази година да бъде още по- активен, по-динамичен, и наистина, двупосочен разговор между преподаватели и студенти. И за сваляне. Така че за тези проблемни комплекти, ние предлагаме не само спецификацията себе си, което по принцип е доста подробен PDF, но също така неща, известен както за сваляне, при които един член на преподавателския състав ще доведе седмично сесия, която буквално ви ходи чрез набор проблема, който ви дава съвети, както и полезни съвети и изходни точки и има за цел да поиска от често задавания въпрос: откъде да започна? Е, вие започвате от гмуркане в спец. сам по себе си, или чрез посещение на или гледане на тези за сваляне. Първата репетиция, в действителност, ще бъде този петък. Те ще бъдат в петък не толкова, защото смятаме, че това ще бъде популярен време, но тъй като ние можем да ги снима в началото на седмицата и да получите онлайн до края на седмицата, така че да имат колкото се може повече дни е възможно да се всъщност да се включим в това съдържание, както добре. Но повече за това в лекцията този петък. Сега по отношение на структура за подкрепа, най-важният статистика е може би 108 сътрудници на преподаване и курсове асистенти, че този курс в момента има. Ако някой от вас, които нямат противоречиви класове биха искали да се присъединят ме тук на сцената, точно тези момчета, които в крайна сметка наистина ще дефинирате опит в курса. Имах много на преподаване събратя да ме учи класове в дни, и аз помня много малко от тези, които, честно казано, но към днешна дата, аз все още помнят между онези малцина, CS50 TF, който наистина ми помогна да отговори на въпросите, които наистина ми помогна, когато бях борят, и наистина е партньор по този опит на изучаването на един нов свят. В малко, всички тези момчета ще се присъедините извън за торта, която е традиция от CS50, в трансепт на Мемориал зала, но нека първо да ви запозная с Нейт Hardison отново, Роб Боудън, и Томи McWilliams Разбира се, тази година оглавява. Ако вие ще се присъедините към мен, тук в средата. Те са подготвили някои вдъхновяващи забележки. TOMMY MCWILLIAMS: Аз не изготви нищо вдъхновяваща. , Но името ми е Томи. Аз съм старши в Mather. Аз съм изучаване на компютърни науки, наистина развълнуван да бъда в отбора глави и става чрез пътуването CS50 с вас. Това, което наистина обичам CS50 как тя наистина ви учи да се мисли за проблеми по нов начин. Това наистина е умение, което ще бъде безценен, без значение коя област отидете в. И не само това, но ние предлагаме повече свободно бонбони, отколкото всеки друг път на територията на колежа. Така че аз съм просто наистина очаквам с нетърпение да видя какво всеки изгражда този семестър. И ако някой има някакви въпроси сега или през семестъра, определено не се колебайте да се достигне до мен, и аз ще бъда щастлив да помогне. ROB BOWDEN: Здравейте. Аз съм Роб Боудън. Аз съм старши в Къркланд. Да, точно така. Ние всички сме много развълнуван за следващия семестър. Надяваме се, че всички сте развълнувани. Аз не очаквах това. Да. Затова ние толкова много усилия в този семестър наистина страхотно, и като стига да сте готови да поставите в усилията, има толкова много неща можете да получите от този курс. Можете да получите много забавно на този курс. Ние няма да има персонал от 108, ако не може да получи много забавно от него, така че просто се опитват да се включат, а вие няма да съжалявате. Нейт HARDISON: Здравейте, момчета. Аз съм Нейт. Аз съм учител за курса. Наистина съм развълнуван да бъда тук, както и. Това е първата ми година тук. Надявам се, че всички приемат това разбира се, и да го ползват толкова, колкото аз съм радваше досега. И ако някога искате да научите как да дойде до девет или десет в двоичен, хайде говори с мен. SPEAKER 1: Така че с риск за напускане на тези момчета тук на сцената малко неловко, нека да се въртят през само няколко от нещата, които се очакват, преди да сме отлага за торта. Какво е това, което предстои? Е, ако вземем един бърз поглед назад към миналата година, в проблем, нула, предшественици гмурна в програмен език, наречен Scratch, графичен език за програмиране, които ще използваме в първите дни на курса, като се започне този петък, за да научат някои понятия, които са непознати за някои от вас, но осъзнават ще има напреднал аспект на това за тези от вас с предварително фон. При проблем миналата година, две, студентите се гмурна в света на криптография, изкуството на enciphering или кодиране на информация, изпълнението на програмите, че шифровани данни, и в последното издание на хакер година студентите продължи до напукване или декодиране на пароли в типичен компютъра. XC файла с паролите, като идва с алгоритми и евристики, за груба сила разберете какво нечия парола на компютъра система. Миналата година или две, в проблем, четири направиха учениците изпълнение на игра на судоку. И хакер издание тази година са учениците не просто изпълнява как да играят играта, но всъщност за решаване, при което компютъра може да ви осигури, човека, с нотки, по-бързо, отколкото сте решаване този конкретен проблем. Проблем набор пет, ние направихме криминалистите, това изкуство за възстановяване на информация това е случайно или много съзнателно изтрити от компютъра. Миналата година, на преподавателския състав и аз се разхождаше из университета снимки на хора, места и неща и след това случайно форматиран медийната карта на нашата камера, че всички тези снимки. Но няма проблем, ние направихме криминалистите образ на тази карта медиите, я подаде всички ученици в класа, и ги изправят пред предизвикателството да пишат програми възстановени на JPEG файлове от тази карта. И това всъщност е един от любимите ни комплекти проблемни, и аз изкопал стария имейл от един от вашите предшественици, което е много забавно да се прочетете някъде преди. Това е от Мат. Скъпи Дейвид, вчера сестра ми случайно форматирани SD си камера карта и загуби за една година запомнящи се снимки. Тя за съжаление не е най-добрият в архивиране на нейните данни. Но тази ситуация ми напомня на п-набор пет, така че аз мислех, че ще се опита да пуснете си SD карта чрез възстанови програма, че аз написах по целия път обратно през октомври. Така след четири часа разберете как да създадете сурово изображение от форматирана SD карта - Google да се окажат доста полезни в това отношение, докато по ирония на съдбата случило се намира вашите инструкции в Интернет - бърникането около с някои от аргументите на командния ред, успях за създаване на "Съдебна медицина изображение, и след инсталирането и конфигурирането на CS50 техника, успях да тече съдебно изображение чрез моята програма и възстанови всички 1027 на снимки на сестра ми, пише Мат. Проблем набор миналата година шест, ние дадохме възможност на студентите за речника на 150 000 английски думи и оспорва ги да напишат проверка на правописа, че отговори на запитвания на формата, е тази дума изписани правилно или неправилно възможно най-бързо. И на неучастие в базата са били студенти, които могат след това предизвикателство съученици чрез публикуване на резултатите от тях, размера на RAM, че те използват, броят на CPU цикъла или секунди, които те използват, така че студентите са били класирани на хода на потребителя - отново, само една възможност аспект от него, но много забавно че много често студент ще стигнем до позиция номер 10, или така на големия борда, на сайта, излизам на вечеря и след това се върна, и реализиране на съквартиранта си пред него току-що остриета на големия съвет, като по този начин се налива още два или три часа само на едно неговата или нейната съквартирантка нагоре. Така че ние с нетърпение очакваме нещо подобно и през тази година. Проблем набор 7 се насочат в посока на уеб програмирането, всъщност решаване на проблемите в околната среда все по-все по-често на уеб браузър. Знай тогава decreasingly да изтеглите софтуера за Mac-ове и персонални компютри, но все по-често да правим всичко в интернет. И наистина, през миналата година, около 88% от окончателните проекти на учениците в хода уеб-базирани. И тези също са умения, които ще черпят от този клас края на курса, защото това, което се очаква в края на курса е CS50 панаир, изложба, която се базира на идеята за наука справедлив, но в тази версия на справедлив всички ученици в класа носят лаптопите си, и тяхното приятели и семейство, и други в северозападната част на науката, на висока сграда на кампуса, създаде своя лаптоп, за да получите някаква храна, да получите някои пуканки и напитки, както и след това показват окончателните си проекти за всички присъстващи, който миналата година номерирани от около 2500 участници от в колежа, и изрази като това, и като това не е необичайно по време на панаира. Водещи на панаира е CS50 Hackathon възможност да хоп на Харвард транспорт до главата надолу по улицата към Microsoft в 20:00, а не се прибера вкъщи до 07:00 ч.. Ние обслужваме първо вечеря в 20:00, втора вечеря в 1:00 AM и за тези, които все още стои в 5:00 AM ние се отнасяме палачинки в ИХОП. И Hackathon е възможност, както е на снимката, да се потопите в своя окончателните проекти, независимо дали работят сами или с приятели в среда за съвместна работа, където целия преподавателски състав работи добре в нощта с достатъчно доставки на Хонг Конг китайска храна. В 05:00 часа, тези изображения, тъй като те доста често тази година, както и. Така че, тъй като ние се отлага в момента за торта, имайте предвид, че 76% от хората в тази зала без предварителен опит, а по учебната програма, това, което в крайна сметка има значение в този курс не е толкова много, когато ти свърши по отношение на съучениците си, но в която вие сте в 11-та седмица, в крайна сметка по отношение на себе си в седмици 0. Това е CS50.