المتحدث: موافق، لذلك، سوف لا أصدق ذلك، ولكن في الأسبوع الماضي، يوم الاثنين، في بيرس، وأنا انخفض في الطابق السفلي. أنا لا أذهب إلى بيرس. وأنا لن يعود مرة أخرى، ل تركت أشيائي وحدها، مثل، خمس دقائق وشخص سرق جهاز الكمبيوتر الخاص بي وبلدي الهاتف من حقيبتي. وهو ما يعني أنني حصلت عليه مرة أخرى، و ثم بعد أقل من أسبوع أنها حصلت على سرقة مرة أخرى. ثم حصلت على تشغيله - البحث لا يزال بلدي اي فون أن يكون غير مفيد. لذلك أنا مواصلة تشجيع لا لاستخدامه. اتضح على مرة واحدة، وكان في معهد ماساتشوستس للتكنولوجيا، في وقت لاحق مثل 15 دقيقة، والشخص ودعا هذا رقم الهاتف الذي أظهر في بلدي AT & T سجل المكالمات. فذهبت على الانترنت، ودعا أن الهاتف العدد، وأنه توجه مباشرة إلى هذا جهاز الرد على المكالمات باللغة الاسبانية. وأنا لم يسمع منه منذ ذلك الحين. لذلك اضطررت للحصول على جديد الهاتف والكمبيوتر. وأنا أعلم. نعم. ولكن اذا كنت تريد رقاقة الرجال في بلدي صندوق الكمبيوتر بعد ذلك، وهذا هو السبب لقد طلب منك هنا. مجرد مزاح. لكن ذلك كان المحزن حقا والصدمة. ولكن كل شيء يعود الآن، وهذا هو السبب أخذت ف المحدد مسبقا في 8 وقتا طويلا، لأن لم يكن لدي جهاز كمبيوتر. وسرق شخص ما ذلك. وأنا عبر البريد الالكتروني، يسأل إذا كانت سوف الصف الخاص بك 8-تعيين ص. لكنهم قالوا لا. وكنت مثل، هل يمكن أن يكون جهاز الكمبيوتر الخاص بي مرة أخرى؟ وانهم مثل، لا. مجرد مزاح. موافق. هذا هو القسم الأخير لدينا، ولدي بضعة - لدينا ثلاثة فقط الأمور على جدول الأعمال. ونحن في طريقنا لنتحدث قليلا حول دليل س. ثم نحن ذاهبون لقضاء 15 دقيقة على التجريبي بارد. ثم نحن في طريقنا للجميع يقول وداعا لبعضها البعض. أنت لا تحتاج حقا أجهزة الكمبيوتر أو قلم أو ورقة لتدوين الملاحظات، أو متابعة على طول. لذلك أفترض إذا كان لديك جهاز الكمبيوتر الخاص بك يصل، ثم كنت في الفيسبوك. فقط أقول. إلا إذا كنت ملء س الدليل، الذي هو الأول. دليل س مفتوحا. لقد كان لك رسالة بالبريد الالكتروني حول هذا الموضوع. مرة واحدة ويقدم كل الاشياء س في نهاية العام، وأحصل على كل من تعليقات س في عشرات من الجميع الذي يختار أن تعطيني ردود الفعل. وحتى عندما تذهب في س - أنا لا أعرف إذا كنت تستطيع أن تفعل هذا، جيف، لأنك وطالب التمديد. لكن عندما تذهب في س، إذا كان لديك لا فعلت ذلك من قبل، يمكنك اختيار الخاصة بك المعلم، الذي هو ديفيد مالان. ما عليك القيام به معه. وبعد ذلك يمكنك اختيار TFS. ويمكنك اختيار العديد من TFS كما تريد. ولكن هناك 60 منا. لم يكن لديك لاختيار الجميع. يمكنك فقط اختيار لي، أو مجرد اختيار زوجين أشخاص آخرين، إذا كنت تريد، ل نعطيهم ردود الفعل كذلك. ثم تحصل على كل هذه الدرجات محاور مختلفة، وبعد ذلك يمكنك ترك ردود الفعل عليها. وبعد ذلك، مثل بعد شهر، سأحضر كل ما ردود الفعل. وتماما مثل ردود الفعل التي قد تم إعطائي طوال الفصل الدراسي، وأنا قراءة كل ذلك. وانها مفيدة حقا، وأنه يساعد لي تنمو كمدرس وبوصفه الفردية. لذلك، من فضلك، تأخذ بعض الوقت للقيام بذلك. ونحن في طريقنا الوحيد لوجودي هنا ل، مثل، 30 دقيقة. حتى إذا كنت تريد، في نهاية هذا، ل يستغرق خمس دقائق، ومجرد ملء سؤال، لأنه لا يأخذ أي أكثر من ذلك الوقت. من شأنها أن تكون رائعة، وأنت أيضا الحصول على الدرجات الخاصة بك مرة أخرى بسرعة أكبر إذا كنت ملء Q. لذلك معظم كنت قد فعلت ذلك من قبل - أو لا، ما يقرب من نصف لك وقد فعلت ذلك من قبل. ولكن اذا كنت طالبة، هذا ما هو ذلك. انها سوف تكون هي نفسها بالنسبة لجميع الطبقات. تفعل ذلك. يستغرق خمس دقائق. ولكن أيضا، إذا كنت تفعل ذلك قليلا على محمل الجد، وهذا ليس أسوأ شيء في العالم، لأنني بالتأكيد تأخذ الأمر على محمل الجد. حتى إذا تركت لي وجه مبتسم، وسوف نقدر ذلك. ولكن أود أن نقدر أيضا إذا كنت ترك لي أكثر من وجه مبتسم. ولكن الأمر متروك لك. لا استطيع ان اقول لك - أو أحب مبتسم كبيرة وجه، برأس مال D. وهذا سوف تكون أفضل. حسنا، هذا كل ما لدي لس: إذا كنت لديك أي أسئلة، يمكنك أن تطلب لي، ولكن لا تحتاج إلى شرح جدا. فقط، من فضلك، تعبئته. أود حقا نقدر ذلك، وهذا يعني الكثير بالنسبة لي. حسنا، هذا هو ما نحن في طريقنا للقضاء 15 دقيقة تمر. أنا ذاهب لتظهر لك بعض التعليمات البرمجية. وأعتقد أن هذا هو حقا بارد، وهذا حصل لي أكثر ولع في علوم الكمبيوتر. لذلك آمل انها لن تفعل نفسه بالنسبة لكم جميعا. نحن نذهب لفتح - وهذا كله كود سوف أرسل لك في وقت لاحق. لكننا ذاهبون لمجرد فتح - أنا في محطة بي - ونحن في طريقنا لفتح هذا البرنامج دعا [؟ MySum. ؟] يمكن الجميع أن يقرأ، أو يجب أن جعلها أكبر؟ أي شخص يمكن أن يقول لي ما هذا الكود سوف عندما كنت تفعل تشغيله، أو ما هذا البرنامج سوف تفعل عندما كنت تشغيله؟ [؟ وافي،؟] ما رأيك انها تنوي القيام به؟ الانتهاء من المضغ. يجب أن لا تتحدث مع فتح فمك. الحضور: هل يأخذ حفنة من الحجج، والعثور على مبلغ منهم العودة خلاصة القول، ومن ثم طباعته؟ أو أنه يأخذ في اثنين من الحجج، و ثم يفعل [غير مسموع]. وبعد ذلك بطباعة ما كانت النتائج. سرور: إغلاق قريبة جدا. أي شخص تريد إضافته إلى [؟ ما افي؟] قال؟ لا تحتاج إلى إعطاء هذا البرنامج أية وسائط سطر الأوامر؟ الحضور: رقم المتحدث: رقم ماذا يحدث إذا كنت لا تعطيه أية وسائط سطر الأوامر؟ أنا فقط إرسال دوت مائل MySum. الحضور: 1 زائد 2 يساوي 3. المتحدث: 1 زائد 2 يساوي 3. وأنها سوف تطبع أنه من أصل. هذا صحيح تماما. سترى أن و الطباعة خط في القاع. انها سوف تطبع أ، ب، و ثم مجموع أ و ب. وأعتقد أن نفترض أن مجموع يعمل بشكل صحيح. الافتراض جيدة. حسنا، وماذا يحدث لو تعطيه ما حجة؟ [؟ مانو؟ ؟] الجمهور: انها سوف تضيف ما الحجة الأولى هي ب. أو 2، آسف. سرور: الحق، إلى 2. لا أحد يعرف ما يفعل strtol؟ انها atoi أساسا. Atoi هو في الواقع نسخة من الهوى - أو إصدار أبسط من strtol. ولكنه يستخدم في الواقع strtol. ولقد وجدت أنه من أصل لأنني أردت شيء من هذا القبيل atoi، ثم عندما كنت لم atoi، وأنا أقرأ هنا. ولقد وجدت "هذا السلوك هو نفس "strtol. لذلك فمن الأساس لatoi جميع المقاصد والأغراض. وترى حتى يمكنني استخدام لاغية و10. هذا يتيح في الواقع كنت تأخذ سلسلة، وتحويلها إلى رقم، ثم اختر ما قاعدة كنت تريد أن تفعل فيه. لذلك هذا هو الأساس 10 هنا. أنا قد فعلت قاعدة اثنين للعشرية، قاعدة 16 لست عشري. انها باردة جدا. ولكن قصة قصيرة طويلة، وهذا يستغرق يومين أرقام ويضيف بعضهم البعض. لذلك دعونا تشغيله. وعليك أن تلاحظ أيضا، هناك بعض الأشياء - لذلك لدي MAKEFILE هنا، و إذا قمت بفتح ان ما يصل، وبعض الأشياء ستلاحظ مختلفة. على وجه الخصوص، هذه الحجة الحق هنا، وربما كنت لم أر ذلك من قبل. عموما، ونحن تجميع الأشياء مع اندفاعة صفر، صفر. اندفاعة الصفر، الصفر، يعني لا تفعل أي تحسينات، مترجم. لا تحاول وجعل أي شيء يتوهم، أو جعل أي شيء تعمل بسرعة أكبر، أو الحصول على التخلص من المتغيرات التي هي ضرورية. لا تحسين هذه الشفرة على الإطلاق، أنا أسأل عن المستوى الثالث الأمثل. لذلك أنا أسأل مترجم للقيام الكثير من التحسينات. يمكنك تغيير ذلك في makefile عندما لديك هذا الرمز، إذا كنت تريد لرؤية الاشياء المختلفة. والتي سوف نعرض في الثانية. لذلك نحن تشغيل بلدي مبلغ 1 زائد 2 زائد 3. شخص ما تعطيني اثنين من الحجج. الجمهور: 4 و 5. المتحدث: 4 و 5. شكرا لك. كبيرة، وأنها تعمل. ما هي بعض الحجج الأخرى جيدة في محاولة للتأكد من هذا يعمل؟ أي شخص؟ الحضور: 0. المتحدث: 0 و؟ الحضور: السلبية 3. المتحدث: وهو يعمل. ولكن تلك كانت خيارات جيدة. حسنا، دعونا نعود هنا. هذا هو mysum.c. ستلاحظ هناك أيضا شيء دعا sumfunction.c. وهذا يقول: أوه، هناك شيء المعرفة في sumfunction.c. أنا لا تتضمن هذا الملف هنا لأنني لست بحاجة إلى. لكنني ربطه عندما كنت في تجميع، التي لاحظت. دعونا انتقل لأعلى. رأينا عندما كنا جمعت mysum، والحق هناك، ونحن المرتبطة في الثنائية من sumfunction.o. وأنا لست بحاجة إلى ملف الرأس لأنه، بطبيعة الحال، هناك وظيفة الإعلان. وتشمل حادة جدا عادة يضع فقط في تعريف الدالة. هنا لقد وضعت للتو على التوالي في التعليمات البرمجية. ولذا فإنني عليك القيام به هو الرابط في ثنائي، الذي أقوم به. أي التخمينات على ما هو في sumfunction.c؟ ما قمت بكتابة كود في sumfunction.c؟ الحضور: [غير مسموع]. المتحدث: أي التخمينات؟ نعم؟ الحضور: أعتقد، يعرف بعض [غير مسموع]. المتحدث: نعم. لذلك أفعل الكتابة كثافة مبلغ الباحث أ. وأنا أكتب هذا الخط، ومن ثم لدي المفتوحة متعرج، أغلقت متعرج. ما رأيك أنا أكتب داخل تلك الأقواس المتعرجة، داخل تلك الوظيفة؟ نعم؟ الحضور: عودة يساوي. المعالج: هذا هو تخمين جيد حقا. الذي يفكر [؟ مانو؟] هو الحق؟ تقول العودة زائد ب. حسنا، ليس الجميع. [؟ اكشار،؟] قمت بذلك، أيضا؟ أنت متأكد؟ موافق. ماذا؟ الحضور: أنت كتابتها بشكل خاطئ. سرور: لا، لم أكن. نعم، مجرد مزاح. أنت على حق. هذا هو بالضبط ما يقول. انها العودة زائد ب. الذي يجعل الكثير من معانيها. حسنا، دعونا نعود هنا. ونحن نرى كيف أن رأس - هذا هو نوع الإرجاع. نتذكر، ونحن قد رأيت أن يوم واحد، و العودة نوع وظيفة، ولكن يذهب قبل اسم الدالة كثافة العمليات. هنا، لقد كثافة مكتوب. ما رأيك سيحدث إذا في هذا وظيفة، وأنا لا أكتب كثافة، ولكن أنا أكتب غير موقعة؟ الفرق، بطبيعة الحال، هو أن غير موقعة يمثل الإيجابي الوحيد أعداد صحيحة، وكثافة العمليات يمكن أن يكون إيجابية أو سلبية. حتى لقد غيرت العودة نوع من هذه الوظيفة. لا يتطابق هذا الرمز هذه العودة اكتب هنا. ما رأيك سيحدث عندما كنت تجميع؟ يجب أن يصيح في وجهي. لا الصراخ. ماذا عن عند تشغيل البرنامج؟ دعونا نفعل قبل 0 السلبية 3، 1 أو سلبية. أنه لا يزال يعمل، على الرغم من أنني أقوله انها إرجاع عدد صحيح غير الموقعة. بوضوح انها ليست العودة عدد صحيح غير الموقعة. انها إرجاع عدد صحيح وقعت. انها العودة السلبية 1. حسنا، هذا غريب. ماذا عن إذا ذهبت في هنا وتفعل ذلك؟ حتى لقد تغير كل شيء من الباحث إلى غير الموقعة. يمكن أن يستغرق سوى أعداد صحيحة غير الموقعة. ولكن هل نحن ما زلنا نعتقد انها سوف تعمل؟ الجمهور: نعم. المتحدث: وسوف. هذا مجنون. ونعبر في تعيين بوضوح صحيح، ونحن يمكن أن تمر وقعا صحيح، فإنه لا يزال يعمل. OK، أي أفكار لماذا لا يزال يعمل، أو ما الذي يحدث؟ نعم، جيف. الجمهور: انها لديها ما تفعله مع التحسين التي أبرزت. المتحدث: رقم فإننا لا يمكن تغيير الأمثل، انها لا تزال تعمل. أستطيع أن أفعل ذلك من أجلك، ولكن - الجمهور: سآخذ كلمتك لذلك. المتحدث: نعم. إذا قمت بفتح MAKEFILE هنا، لقد غيرت الأمثل. حتى تتمكن من القيام اندفاعة صفر، صفر. وسوف لا تزال تعمل. أفكار أخرى؟ يا رفاق المتوقع أن يعمل، لذلك كل لماذا سوف تتوقع أن تعمل؟ لا؟ الصمت. موافق. ولا بد لي من الانتظار سبع ثوان، لأنني سألت سؤالا. ذلك الشيء باردة حول C، وكنت قد ربما تعرف من قبل - كنت قد لا يكون، وهذا قد هذه هي المرة الأولى. ولكن كما تعلمون جميعا، عندما أكتب شيء في C، ولكنه لا يحفظ مثل على هذا الكمبيوتر. يتم حفظه كما الآحاد والأصفار. وغني من التعليمات البرمجية C لرمز التجميع. وقد أي شخص ينظر رمز التجميع من قبل، آلة رمز التجميع؟ سوف نبحث في في الثانية. وغني من التعليمات البرمجية C لرمز التجميع. ويا رفاق معرفة المراحل من تجميع. كان عليك أن استظهر أن للمسابقة واحدة، ومن ثم الكتابة بها على مسابقة الصفر. حصلت معظم الناس أنها خاطئة. أعتقد يا رفاق مسمر. ولكن، يا رفاق هي أفضل القسم للمسابقات، من جانب الطريق. وهو رهيبة. انها لن يؤذيك. لا تكون قلقة. ولكن هذا رائع حقا. وظيفة جيدة. لذلك يذهب إلى لغة التجميع، و بعد ذلك يذهب إلى الآحاد والأصفار. ويتم حفظ الآحاد والأصفار على الكمبيوتر، وهذا ما حفظه في وa.out، أو في هذه الحالة، الملف القابل للتنفيذ. ويتم تشغيل جهاز الكمبيوتر الآحاد والأصفار. أليس كذلك؟ تعلمنا هذا من قبل. ذلك الشيء هو بارد، وهذا غير موقعة الفكرة، فكرة أنواع رجات غير الموقعة، وهلم جرا، وهلم جرا، وهذا هنا في اللغة C. هذه موجودة. ولكن لا وجود لها أنواع في والآحاد والأصفار. أنواع لم تكن موجودة حتى حقا في مستوى لغة التجميع. لذلك هذا شيء موجود في C العالم، ولكن لا وجود له في جهاز الكمبيوتر العالم أو العالم المعالج. هذا بعض التجريد أن C وقد شمل اللغة، لجعل لدينا حياة أسهل. ذلك في نهاية اليوم، أستطيع أن أكتب أشياء مختلفة كثيرة هنا، و لا تحدث فرقا. لأن هذا موجود فقط في العالم C. لم يكن موجودا في الآحاد والأصفار العالم. والبرنامج لدينا في تنفيذ والآحاد والأصفار العالم. ذلك واضح لا مهب عقلك حتى الآن. ولكن أعتقد أن هذا رائع. نعم، جيف. الجمهور: لذا، إذا بدلا من به الباحث، يمكنك القيام شار. وكنت - المتحدث: دعونا نفعل ذلك في ثوانى. الحضور: لأن ثم تحصل على يذهب غير الموقعة من السلبية إلى 128 127 أو 0 إلى 255. المتحدث: حتى شار إشكالية. لا أحد يعرف لماذا شار سيكون إشكالية، وأنه سيكون في الواقع تتغير الأمور في تلك وأصفار العالم؟ الحضور: ونظرا لحجم شار. المتحدث: حجم شار هو 1. حتى غير الموقعة هو أيضا 4 بايت. حتى شار سيكون المسمار الامور. ولكن ما هو 4 بايت وهذا تتعلق شار؟ أو في أن يضيف إضافي واحد - يمكنك وضع واحدة أكثر شخصية بعد شار. الجمهور: شار نجوم. المتحدث: شار اللامعة لها 4 بايت. لذلك دعونا نفعل شيئا هذا هو نجم شار. لذلك هذا ربما العمل، ولكن نحن سوف تفعل شيئا حتى جنونا من هذا. في رأيي، جنونا. لقد كتبت الآن دالة تقوم بإرجاع مؤشر، ويستغرق المؤشر وقيمة غير موقعة - سنقوم تغيير هذا يعود إلى int لذلك نحن لسنا تجري العديد من التغييرات في وقت واحد. ولها مجموعة تسمى، والفهارس في مجموعة، وإرجاع عنوان. شاهدنا هذه العوامل من قبل. هذا، ماذا كنت تعتقد أن هذا هو الذهاب القيام به، في المقابل، عندما كنت تشغيله؟ ما رأيك انها تنوي القيام به؟ أي التخمينات؟ الجمهور: سوف segfault. المتحدث: ماذا؟ سوف segfault؟ وهذا هو تخمين جيد. توم يقول نفس الشيء. أي التخمينات الأخرى؟ الذي يعتقد انه سيكون ل تفعل الشيء نفسه؟ الذي يعتقد انها سوف سوف segfault؟ يفعل الشيء نفسه. آسف. ولكن، بطبيعة الحال، وضعنا في 1 و 2. وأولئك على حد سواء صالحة، أليس كذلك؟ دعونا نرى، يمكننا أن نذهب إلى المركز الثاني من صفيف. لكن ما إن جعل نحن ب رقم سالب؟ ربما كان هذا هو أفضل تخمين عن شيء segfaulting. أنه لا يزال يعمل. حسنا، هذا هو الآن مجنون. هذا هو وظيفة مبلغ صالحة على حد سواء. هذا يفعل الشيء نفسه بالضبط باعتباره عودة وب. أي شخص يمكن أن يفسر لماذا هذا هو جيد خلاصة القول ظيفة، أو لماذا يعمل هذا؟ ما الذي يحدث هنا؟ لماذا تفعل هذا بالضبط نفس شيء لدينا وظيفة المبلغ القديم؟ [؟ اكشار،؟] ما الذي يحدث؟ الجمهور: لأنه عندما يكون لديك وعلى هذا عنوان ل ذاكرة المكان - وعندما تفعل هذا الضم، و يذهب إلى أن عنوان الذاكرة. وعندما تذهب إلى b، كنت نوع من تتحرك خطوات من هذا العنوان الذاكرة، كنت العائدين ذلك. لذلك كنت في الواقع، في الواقع، إضافة وب [غير مسموع]. أين هي العمليات القياسية على أن العودة؟ مثل، أين تقع الأقواس؟ هو عودة العنوان على وقبل أو بعد (غير مسموع)؟ المتحدث: انه ذاهب الى مؤشر في ب - أو مؤشر إلى - ثم العودة عنوان. موافق، لذلك لم يفهم الجميع ما [؟ اكشار؟] وقال، وأوضح، لماذا يعمل هذا؟ لم أكن، وهي المرة الأولى شخص وأوضح هذا بالنسبة لي. أن أي شخص يحب صورة لتفسير هذا؟ ونحن في طريقنا إلى رسم صورة، مع لا علامات، هذا أمر عظيم. وجدت بعض. لذلك لدينا مجموعة وهذا سلسلة من مربعات. أول واحد هو مؤشر 0، مؤشر 1، 2، 3، 4، دوت، دوت، دوت. وهناك مجموعة نموذجية. وبالإضافة إلى وجود مؤشرات، لديهم كل عناوين الذاكرة. لذلك دعونا نعطي هذا العنوان الذاكرة 13، 14، 15، 16، 17، وهلم جرا. الجميع هنا حتى الآن. لذلك هو العنوان. اسم صفيف، مؤشر يتم حفظ هناك. انها مؤشر، انها موقع الذاكرة، إلى بداية الصفيف. حتى لو كان هذا الصفيف، وسيكون قيمة 13. وبطبيعة الحال، ونحن يمكن أن تعطي على أي قيمة نريد. شار نجمة لذلك، نحن يمكن أن تعطي أي عنوان الذاكرة نريد. نحن يمكن أن تعطيه 0، ونحن يمكن أن تعطيه السلبية 1 - 1 السلبية غير موجود، بحيث ربما إشكالية، ولكن رأيت أنه لا يزال يعمل. ولذا فإننا يمكن أن تعطي أي عدد نريد، أي عنوان ذاكرة نريد. ثم، كما يقول الباحث ب، OK، انتقل هذا العدد من الخطوات في الصفيف. إذا كان الأمر كذلك ب يساوي 2، ويساوي 13، أننا في عنوان الذاكرة 13. ونذهب في خطوتين، وهكذا نحن هنا. والضم يعني العودة عنوان هذا الموقع. والعنوان هو، بطبيعة الحال، 15. حتى نحصل على 13 زائد 2، أو زائد ب، والذي هو 15. السؤال هو، على الرغم - أنا آسف. هل هذا توضيح الأمور لماذا يعمل هذا؟ الحضور: لماذا يعمل ذاهب - حتى تتمكن من الحصول على مجموعة و انتقل إلى مؤشر سلبي؟ سرور: الحق. هكذا فعلنا الأرقام السالبة، لذلك هذا هو - هل هذا معقول رغم ذلك، الأولى، [؟ أفي،؟] بالنسبة لك؟ الجمهور: نعم أنا فقط [غير مسموع]، ولكن - المتحدث: نعم، وهذا سيعود 15. إذا كان 13، وكان ب 2، هذا سيعود 15. الحضور: وهكذا فهرسة الصفر لا تصبح قضية، أليس كذلك؟ لأنك تتحرك من 0. سرور: الحق. لذلك كنت تتحرك - حتى إذا كان ب 0، أنت لن تتحرك في أي مكان. وكنت عاد لتوه عنوان - إذا كان ب 0، وهذا هو الأساس العودة أن عنوان. يمر في شار نجمة لوإعادة عنوان هو مجرد إرجاع، أساسا. موافق، والسؤال هو لماذا العمل الأرقام السالبة؟ وهذا هو الشيء باردة حقا عن هذا، لأن هذا سوف segfault ينبغي. وسيكون إذا كنا سوف segfault فعلت شيئا من هذا القبيل. دعنا نقول، وكثافة العمليات. حتى هذا الرمز تبدو متطابقة و يجب أن تتصرف مماثل. أساسا، س هو متغير القمامة، وهذا ما ينبغي أن تتصرف بشكل مماثل. دعونا جعل هذا - عفوا - في نجوم. حسنا، نحن بالفعل الحصول على أخطاء هنا، لأنه يحدث بالفعل أن يغضب في وجهي، لأنه بالفعل يعرف ما سيأتي. على وجه الخصوص، في ثانية واحدة. عنوان ذاكرة مكدسة المرتبطة مع متغير محلي. أساسا، أنا لا أذهب إلى تجميع هذا، وبعد ذلك أنا ذاهب الى التراجع عن القيام ما فعلناه للتو. ولكن لأننا في الواقع أبدا الوصول إلى ما هو في الذاكرة الموقع، وانها لن سوف segfault. نحن لم تبحث في الواقع على ما هو في المربع الثاني أو ما في أي مربع من هذه المجموعة. نقوله فقط، وهنا عنوان الشيء الذي نبحث عنه و العودة هذا العنوان. نحن لن فعلا في مجموعة أن ننظر إلى هذا الموقع. ولأننا لا تلمس الذاكرة، لم نحصل في ورطة. نحن لا تحصل على سوف segfault. إذا حاولنا، مرة أخرى، أن تلمس الذاكرة، وتلمس ما كان في أو ب - أو شريحة ب، وبافتراض وكان و0 - إذا كان 0، حتى، من شأنه أن تكون جميلة سيئة، لأننا لا يمكن ان يستمر أسفل كل الطريق إلى هناك. إذا كانت أ و ب على حد سواء 0، وحاولنا تلمس ما كان هناك، ثم فإننا تحصل في ورطة. ولكن إذا كنا لا تلمس ما هو هناك، نعود مجرد عنوان، فمن في الواقع لن سوف segfault ل فإنه يتيح لك تنفيذ تلك العمليات. فإنه يحصل فقط في جنون لك، ويحصل على السوبر غاضب، عند محاولة تلمس و الذاكرة الفعلية والعودة ما هو في ذلك الموقع الذاكرة. فهل هذا يعقل؟ هذا مجرد جزء من مجنون C. لذا، لدينا واحدة أكثر من هذه. من يظن هذا هو بارد؟ المزيد من الناس. هذا امر جيد. حسنا، هذا هو موقفنا مشاركة واحدة. وأود منك أن تخبرني ما إذا كان أو لا تعتقد أن هذا هو الذهاب لتفعل الشيء نفسه بالضبط. لقد سطرت هذه في مكان ما. أنا لا حفظها. دعونا نرى، 8، ب 4، 4، 2، 4، 0، 8، 0، 3، 4، 4، 2، 4، 0، 4. لذلك هذا هو صفيف، الآن، لا وظيفة. وانها مجموعة لأن لدينا مربعا بين قوسين، والأقواس لا مجعد. وانها مجموعة من نوع ما؟ أي شخص، هم؟ الجمهور: أرقام ست عشرية منها؟ سرور: ولكن ما هو نوع C؟ أنهم جميعا لديهم أرقام ست عشرية. ما هو نوع C؟ فإنه يقول لك. الجمهور: إنها حرف غير الموقعة. سرور: الحق، حرف غير الموقعة. واثنين من أرقام ست عشرية هو بايت واحد. لذلك فان هذه هي 1، 2، 3، 4، 5، 6، 7، 8، 9 بايت. انها مجموعة من 9 بايت. حسنا، ربما كنت أعرف مسبقا الجواب على هذا السؤال. ولكن، ماذا تعتقد سوف يحدث عند تشغيل هذا؟ أقول، مرة أخرى، في mysum.c، أتوقع وظيفة التي تأخذ عددين. وأنا بدلا من ذلك قائلا ان المبلغ هو مجموعة من الأحرف. ما الذي سيحدث عندما أركض. / mysum وجعل؟ حسنا، أولا، معظم وربما كنت نتفق على أن جعل - أوه لا، مجرد مزاح. اطد أفعل الخطأ؟ اه اه. يجب أن تكون الأقواس المتعرجة. هذه هي الطريقة التي تهيئة مصفوفة. بلدي سيئة. لذلك رأينا بالفعل قبل ذلك أنواع هي التجريد على مستوى C، وليس مستوى الكمبيوتر التجريد. لذلك معظم وربما كنت أتوقع أن جعل، أو افتراض أن من شأنه أن يجعل. ولكن ما عند تشغيل. / mysum؟ ما الذي سيحدث؟ أي التخمينات؟ الجمهور: انها تسير ل طباعة كلمة. المتحدث: انه ذاهب الى طباعة كلمة واحدة. ما الكلمة؟ الحضور: [غير مسموع]. المتحدث: أي التخمينات الأخرى؟ موافق، وطباعة عبارة. هل يمكن أن يكون أي عبارة. وسيكون ذلك الجانب الخاص بك. أي شخص لديه تخمين مختلفة؟ آنا، ما هو تخمينك؟ الجمهور: انها سوف تطبع - رسالتين، أو [غير مسموع] حرف واحد. سرور: واحد إلكتروني. الحضور: هل يمكنني نحصي كثير من [غير مسموع]؟ المتحدث: تسعة. حسنا، انا ذاهب لتشغيله. يفعل نفس الشيء بالضبط. فإنه يضيف رقمين معا. حسنا، دعونا تمرير الحجج اثنين. لأنها لا تأخذ الحجج. لذلك أنا لا أعرف من أين ما في وسعها ربما تحصل على هذه الحجج. ولكن دعونا في تمرير 100 و 0. ويضيف 100 و 0. هذا مجنون. أعتقد ذلك. 4 السلبية، التي تعمل أيضا. يمكنك أن تفعل أي شيء تريده. هذه هي وظيفة مبلغ صالحة على حد سواء. هذه هي وظيفة المبلغ. ولكن، لا، أنت تقول انها صفيف من البايت. فما يجري هنا؟ لذلك، مرة أخرى، دعونا نعود إلى هذه الفكرة التي قلنا في البداية. تذهب من رمز مستوى C، في التجمع اللغة، إلى الآحاد والأصفار. هذا هو ست عشري. ولكن هذا هو في الحقيقة مجرد الكثير من الآحاد والأصفار. هذا هو 72 الآحاد والأصفار، أليس كذلك؟ 72 الآحاد والأصفار. 9 بايت. كل بايت يحتوي على 8 بت. كل بت هو واحد أو صفر. حتى 72 منها أو أصفار. لقد كتبت للتو لهم مثل هذا - بدلا من الكتابة بها والكثير من الآحاد والأصفار. ولكن هذا سوف تذهب من مستوى C اللغة، في التجمع اللغة، إلى رمز. وهذا سوف تطبع في التعليمات البرمجية، في مكان ما، هذه منها 72 والاصفار أنني قد كتبت هنا. حتى في مكان ما في ذلك - دعونا نذهب هنا - في مكان ما في mysum، برنامج، هناك وهذه منها 72 والاصفار التي لدي مكتوبة وقيل في الكتابة. الآن، أي التخمينات عن ما هي تلك 72 الآحاد والأصفار يعني؟ الحضور: ربما نفس الشيء مع عودة زائد ب. سرور: ربما نفس الشيء مع عودة زائد ب. دعونا تحقق من ذلك. دعونا معرفة كيف أنا فعلت هذا. حتى إذا كنت اذهب إلى هنا، وأنا أقول لكم لتشغيل هذا الأمر، objdump-S sumfunction.o. دعونا نذهب تشغيله. objdump - الكائنات، تفريغ. أساسا يمكن أن تعطيني كل ما أريد أن أرى. ويمكن ان تعطيني لغة التجميع. ويمكن ان تعطيني الآحاد والأصفار. أنه يحتوي على نصف طن من الأعلام. هذا هو واحد ونحن في طريقنا لاستخدام في الوقت الراهن. نقطة - كما ترون في الشرائح - وتقول شرطة العاصمة S، بعثر، شفرة المصدر - هذا الخط هو من C - مع التجمع رمز ومع الآحاد والأصفار. ونحن ذاهبون لتشغيل على sumfunction.o. لأنه سوف يكون من الأسهل أن نرى. مرة أخرى - هم؟ الحضور: أنت كتابتها بشكل خاطئ. المتحدث: لكن انا ذاهب فعلا لمسحها لفترة ثانية. أنا أول ذاهب لفتح sumfuntion.o فقط. الحضور: أنت تهجى الخطأ للمرة الأولى. المتحدث: كلاسيك. المبلغ - التي هي كلمة من الصعب، على الرغم من. كنت سأشعر بالدهشة. موافق، لذلك هذا هو sumfunction.o. لم أستطع حتى أقول لك. هناك الكثير من الأصفار، بوضوح الكثير من الأصفار، وهناك بعض الدول الاخرى الاشياء التي ليست أصفار. ولكن في الغالب أصفار. يبدو أن هناك بعض منها. بشكل واضح، وهذا من الصعب قراءتها. هذا هو اللغة الثنائية. دعونا الآن فتحه - ماذا؟ ماذا أفعل الخطأ؟ لم أكن توضيح ذلك بشكل صحيح؟ حسنا، هذا هو حرج. أحتاج ثانية واحدة لمعرفة ما أفعله خطأ. وهذا خطأ واحد. هذا غريب. أوه، هذا هو السبب. انا ذاهب الى العودة الى المبدئي لدينا واحد، ولذا فإننا يمكن أن ننظر في رمز الكائن هذا. لأن هناك ليست حقا ل عندما يكون أي شيء ونحن وضعت للتو الآحاد والأصفار فيه. هناك نذهب. موافق، لذلك الجميع يمكن أن نرى ذلك. هذه الوظيفة، كما قلت، اخماد خطوط C - خطوط شفرة المصدر - مع بعض تعليمات التجميع. هنا لدينا خط شفرة المصدر. هنا واحد، وهنا آخر. هنا هو تعليم التجمع. هذا ما تبدو عليه. تعليمات التجميع - يمكنك معرفة المزيد من هذه إذا كنت تأخذ الطبقات CS الأخرى، ولكنهم عموما تعليمات. وبعد ذلك المصدر والوجهة. ثم هنا هو رمز ثنائي الذي يتوافق مع هذا التجميع التعليمات. لذلك كما ترون، هذه الوظيفة مبلغ، في نهاية المطاف، هو ثلاثة تعليمات التجميع. ثلاثة فقط. وسائل التحقق واحد - هذا م، س، ت لتقف على هذه الخطوة. إضافة لتقف على إضافة. و r-E-ر تقف على العودة. حتى وسائل التحقق واحد، واحد الوظيفة، وعودة واحد. وهذه، هنا، هي أصفار و تلك التي تتوافق مع هذا الرمز. حتى تلك أصفار ومنها، إذا كنت تعرف تلك، يمكنك وضع للتو أولئك مباشرة فيها. وبعد ذلك سوف تفعل نفس الشيء بالضبط. لأنه، في نهاية المطاف، كل كنت المنفذة هو عبارة عن سلسلة طويلة من وأصفار منها. وهذا ما هو التعليمات البرمجية الخاصة بك حقا. والسبب - دعونا ننظر في شيء واحد. لم لدي في makefile مفتوحة؟ لذلك إذا عدنا إلى اندفاعة صفر، صفر هنا - آسف، يا رأس المال، ورأس المال س الصفر، وليس الصفر، الصفر. ونحن لم تجعل، فإنه سيكون لا تزال تعمل نفس الشيء. ولكن الآن لاحظت أن هناك أكثر الكثير تعليمات التجميع. هذا هو لأنه، مرة أخرى، سألت المترجم عدم القيام بأي الأمثل. حتى أتمكن من لا تزال تأخذ كل هذه وأصفار منها، ورمى بها في، والتي من شأنها العمل. أنا فقط لم أمثل، ل انها أسهل قليلا، ثم، لكتابة هذا الصفيف. ولكن هذا من شأنه أن يعمل فقط كذلك. موافق، ونحن في طريقنا للقيام شيء واحد النهائي، لأنني أعتقد هو الجزء أروع. على الرغم من أن الجميع من الواضح في مهب بالفعل، والكلام. في مهب عقولنا. [غير مسموع] لذلك، وهذه هي من فئة CS مختلفة، وهي فائقة مثيرة للاهتمام، أن أكون قد اتخذت - CS61. أنا أشجعكم بشدة لأخذه. ولكن الجزء باردة حول هذه الحقيقة، التي الأشياء ليست سوى أصفار ومنها، هي أن كل شيء وأصفار منها. حتى تتمكن من اتخاذ ملف يحتوي على أصفار الصحيح وتلك التي تريد في مكان ما في ذلك، واستخدام ذلك الجزء من أصفار ومنها بوصفها وظيفة المبلغ. ماذا أعني بذلك؟ أعني هل يمكن أن تأخذ ملف الصورة التي لديه سلسلة من الأصفار الصحيح و منها، التي تطبع شيئا إلى صورة. وبرنامج واحد قد يفسر هو الصورة، ولكن يمكنك تفسير ذلك، إذا تريد، بوصفها وظيفة المبلغ. لذلك إذا أردنا لفتح، ل سبيل المثال، هذه الصورة. دعونا نذهب، مرحبا كيتي. صورة صغيرة رائعة. هنا هناك هو أن سلسلة من أصفار ومنها. تلك 72 أصفار ومنها موجودة في هذه الصورة. ذلك ما يمكنني القيام به، إذن، هو الكتابة - لا بد لي من تذكر أين هم. سوف تجد أن في الثانية. ولكننا - اسمحوا لي معرفة مكان وجودهم. واحدة ثانية. دعونا نفعل - الحضور: [غير مسموع]. المتحدث: شكرا. إذا كان الأمر كذلك نقوم بتنفيذ هذا البرنامج الذي بدلا من ذلك يقرأ في ملف، ثم يذهب لهذا المؤشر في الملف. ثم، مرة أخرى، تماما مثل mysum، ويأخذ رقمين. ويمكننا أن نضيف الأرقام بالضبط نفس كنا نفعل من قبل، والذي يذهب ل وتبين لكم كيف أنه، في نهاية اليوم، كل هذه الأمور هي وأصفار منها. وانها مجرد كيف اخترت لتفسيرها. وإذا نظرتم في الواقع في هذه الصورة - دعونا تكبير قليلا. يمكن الجميع رؤية ذلك؟ ستلاحظ هنا، وهناك بعض طخة غريب. دعنا نذهب - وهذا هو الصورة الأصلية. ستلاحظ هنا وليس هناك لطخة. التي هي رمز للدالة المبلغ، هو أن لطخة قليلا هناك حق. وفعلا، ومرة ​​أخرى، إذا كنت تعلم المزيد حول هذا الموضوع، فسوف ندرك أن هذا مرحبا كيتي التي لديها حتى أكبر لطخة، لديه التعليمات البرمجية التي يمكن أن تأخذ أكثر من الكمبيوتر إذا لم يكن المحمية بشكل مناسب. حتى تتمكن من تشغيل هذا الواقع. أنا لا أذهب لتشغيله الآن. ولكن يمكنك تشغيل هذا مرحبا كيتي الصورة، وما في وسعها سيطرة على جهاز الكمبيوتر الخاص بك. بحيث كل لالتجريبي. هل لدى أي شخص أي أسئلة، تعليقات والمخاوف؟ أعتقد هذه الأشياء هي رائعة. أنها أوحت لي لمعرفة المزيد. أنا أوصي، إذا كنت مهتما على الاطلاق على CS، والتحدث الى لي. على الرغم من أنني الدراسات الاجتماعية المكثف، أنا CS، الثانوية، لذلك وما زلت أعرف قليلا. لكنني أعرف بالتأكيد ما دروس يجب أن تأخذ. اعتقد انها كلها مثيرة للاهتمام حقا، وأنا أشجعكم، بالتأكيد، ل معرفة المزيد إذا كنت مهتما. حسنا، لدي شيء واحد نهائي. آسف. أي أسئلة؟ لم أكن وقفة لو أن ننتظر أحدا كان أي أسئلة حول هذا الموضوع. وأي شخص ستكون وCS المكثف؟ أو التفكير فيه؟ واحد، اثنان، ثلاثة، أربعة. واحد - واحد فقط. وآنا هي اليد فقط وهذا أثار مخول. حسنا، هذا هو بارد. ولاية اسام، ماذا ستفعل؟ الحضور: [غير مسموع]. المتحدث: قسنطينة؟ الجمهور: الفيزياء. المتحدث: قف، التي كانت سريعة. هل كان لديك تجربة سيئة في CS50؟ [غير مسموع]، ماذا ستفعل؟ الجمهور: ليس لدي فكرة. المتحدث: كيرت؟ الجمهور: التأشيرات السياحية أو CS. سرور: التأشيرات السياحية أو CS. توم؟ الجمهور: أنا أفعل ستات. المتحدث: ستات؟ موافق. ما أنت؟ الجمهور: عني؟ المتحدث: نعم. الحضور: ستات. المتحدث: ستات. أوه، هناك تذهب. توم، والتحدث الى الدن. إميلي، ما أنت؟ الجمهور: الطبية الحيوية - المتحدث: هل أنت في هذا القسم؟ الحضور: رقم المتحدث: حسنا، هذا إميلي. انها صديقي. واضح ليس على ما يرام من أحد الأصدقاء، لأنها تتيح لي وقتا عصيبا. هل يمكن أن يكون أجمل لي في الجبهة الجميع، تلميذي - الحضور: وأنا أفعل دليل س الخاص بك. المتحدث: حقا؟ اه اه. موافق، كنت مدهش. أنا أحبك كثيرا. يا صبي. على أي حال، أنا، الليلة الماضية، مثل كل شيء - أنا متأكد من أن الجميع يبدو حقا وشدد في الوقت الحالي. أنا لا أعرف، هي طالبة - هي يا رفاق الشعور شدد؟ أشعر شدد. كان عليه، أنت تعود إلى البيت لعيد الشكر. كنت مثل، أنا ذاهب ل تفعل كل هذه الأشياء. الجمهور: انها مختلفة جدا. المتحدث: نعم، وكنت أعود. جيف، كنت لا تشعر بهذه الطريقة؟ الجمهور: أنا بس كنت تفعل قليلا. سرور: OK، عظيم. حتى أعود، وأنا لم يتم القيام بأي عمل. والأمر كله السوبر المجهدة. وانا قلق، قلق حقا، حول ما إذا كان أو لا أنا الذهاب الى الانتهاء من كل شيء لدي ل. لكن في الليلة الماضية، لم أكد الأول، كنت حزينة قليلا. لذلك أنا كتبت في مجلة نظري حول ما كنت حزينا عنه. وكنت حزينا حول هذا القسم في هذه الفئة يقترب من نهايته. لذلك كنت مجرد الذهاب الى قراءة ليا رفاق قصاصة صغيرة من مجلة بلادي، من الليلة الماضية. يمكنني الحصول على بعض المناديل، بعض الأنسجة من توم؟ لا، أنا على وشك البكاء. أنا لا أبكي. لا أنه لا يمكنك البكاء، أنا فقط لا تبكي. أنا لا أعرف حتى إذا كان لي المسيل للدموع عملت الغدد - القنوات الدمعية. أنا لم أبكي في فترة طويلة. الحضور: [غير مسموع]. المتحدث: موافق، وذلك بفضل. حسنا، هناك القليل مقدمة - هناك بعض أجزاء أخرى من مجلة بلادي دخول، وذلك لأن أحاول أن مجلة كل الليلة التي سبقت وصلت إلى السرير. أنا أوصي اليومية. يساعدك على معالجة الأمور، وأيضا يكون تقديرا كبيرا من يومك. ويجعل من الأسهل كثيرا أن ننظر مرة أخرى على يومك، وندرك أن كان هناك الكثير من الخير الأشياء التي حدثت. حتى إذا كنت تشعر شدد حقا في الليل أو بالضيق حقا، أو المحزن حقا أو التعب. أوه، يا إلهي. أنا لا أعرف حتى لو كان مكتوب أن جيدا لأنني لم تدقيق ذلك. ولكن سنقوم قراءتها. أنا عادة لا تقرأ رسالتي مجلة، ومن الواضح. "غدا، سوف تعلم قراري النهائي القسم CS50 من السنة. انه مجنون كيف يطير الوقت بسرعة. حتى الآن، وأنا ضربت فقط كيف مختلفة كانت تجربتي تدريس هذا العام مما كانت عليه عندما كنت طالبة. بالنسبة للمبتدئين، وأنا بالتأكيد معرفة أفضل المواد. ولكن لا تخبر أول فوج بلدي الطلاب ذلك. الأهم من ذلك، ومع ذلك، أدركت أن الفرح الذي يأتي من مكانة حتى أمام غرفة ما يبدأ بها كما الغرباء، ولكن ينتهي إلى، في الأقل، الفيسبوك الأصدقاء، هو لا حظ في السنة الأولى. بدلا من ذلك، انها من معرفة أنه في بعض الطريق الصغيرة، وكنت مساعدة الموهوبين، ومدروس، لذيذ، و الناس عاطفي تعلم أكثر قليلا حول علوم الكمبيوتر. أنت تحول هذا المصباح الكهربائي فقط بت في المقبس، بحيث انها قادرة للتألق أكثر إشراقا مما كنت، أو أنها، يمكن أن يتصور في بداية الفصل الدراسي. كنت مساعدة تحويل تلك يستهجن رأسا على عقب أسفل وطرح الأسئلة التي تقديم الدعم، ولكن لا تزال تسمح الطلاب على الوقوف بمفردها. انها بالتأكيد ليست من قبيل المبالغة أقول إن هذا القسم هو المفضل لدي جزء من الأسبوع. أو حتى أن أتردد في القول، وهذا كل شيء، في 05:30 كل أسبوع، مع العلم أنه سوف يكون الطريق طويلا حتى نلتقي مرة أخرى. حتى الآن، وأنا ممتن للغاية ل كل من أعطاني هذا الفرصة لتقديم المساعدة للآخرين. لداود على صبره والثقة. لطاقم الفيلم والإنتاج، ل جعل لي تبدو محترمة إلى حد ما. والأهم من ذلك، لطلابي، دون الذي كنت قد لا يوجد سبب ل قضاء 10 ساعة في معرفة أفضل طريقة لاستخلاص المؤشرات، أو وضع ل جدول الدلافين، عن طريق جافا سكريبت. كما هو الحال دائما، انها كانت نعمة ". حتى مع ذلك، شكرا يا رفاق. أنا أراكم جميعا في المعرض CS50، و وhackathon، إذا كنت هناك. وإذا كان لديك أسئلة، وأنا عصا حولها حتى لا أكثر هناك. ولكن أشكر يا رفاق ل عام رائع. [تصفيق] المتحدث: أنا قد أبكي.