1 00:00:00,000 --> 00:00:11,952 2 00:00:11,952 --> 00:00:13,800 >> J. DAVID مالان: لذلك هذا هو CS50. 3 00:00:13,800 --> 00:00:18,970 وكان هذا CS50 نفسه كولتون أوجدن، لأكثر من من هو الموسيقى التي يمكن 4 00:00:18,970 --> 00:00:22,820 تحميل في soundcloud.com/cs50. 5 00:00:22,820 --> 00:00:26,690 >> حتى اليوم ونحن نركز كل أكثر على فن البرمجة. 6 00:00:26,690 --> 00:00:28,980 ونحن نأخذ حيث غادرنا من الأسبوع الماضي، مع التركيز 7 00:00:28,980 --> 00:00:31,660 على خدش، والتي كانت هذه لغة برمجة رسومية. 8 00:00:31,660 --> 00:00:35,490 وتأخذ الأمور إلى مستوى أدنى، باستخدام البرمجة التقليدية 9 00:00:35,490 --> 00:00:38,420 اللغة المعروفة باسم C. ولكن على طول الطريق، وتحقيق 10 00:00:38,420 --> 00:00:40,730 أن نفس الأفكار نحن تحدث عن يوم الجمعة الماضي 11 00:00:40,730 --> 00:00:44,390 سوف تتكرر ليس فقط في هذا لغة C، ولكن في معظم كل الآخرين 12 00:00:44,390 --> 00:00:46,350 أن ننظر في هذا الفصل الدراسي. 13 00:00:46,350 --> 00:00:50,247 >> لذلك نحن دعا هذا الشيء هنا ما آخر مرة؟ 14 00:00:50,247 --> 00:00:51,830 هذا هو ممثل بيان. 15 00:00:51,830 --> 00:00:53,080 لذلك نحن دعا هذا البيان. 16 00:00:53,080 --> 00:00:54,100 وأنه لا شيء. 17 00:00:54,100 --> 00:00:56,910 انها تعليمة و قد تنفيذ الكمبيوتر أو خدش. 18 00:00:56,910 --> 00:00:59,910 والآن فصاعدا، دعونا نبدأ أيضا داعيا شيئا من هذا القبيل وظيفة، 19 00:00:59,910 --> 00:01:02,070 لأسباب سنرى قريبا. 20 00:01:02,070 --> 00:01:03,681 >> وفي الوقت نفسه، رأينا أشياء من هذا القبيل. 21 00:01:03,681 --> 00:01:05,680 وهذه هي عموما يعرف ما بناء؟ 22 00:01:05,680 --> 00:01:06,240 >> الجمهور: حلقة. 23 00:01:06,240 --> 00:01:06,860 >> J. DAVID مالان: حتى حلقة. 24 00:01:06,860 --> 00:01:07,943 لذلك واضحة جدا. 25 00:01:07,943 --> 00:01:09,470 حرفيا تفعل ما تقول. 26 00:01:09,470 --> 00:01:12,210 والصفر، وإذا كنت ترغب في الالزام أكثر من قطعة اللغز في هناك، 27 00:01:12,210 --> 00:01:13,950 قطعة سوف ينمو لأنها تناسب. 28 00:01:13,950 --> 00:01:16,790 وسنرى في ذلك C يمكننا أن نفعل نفس الشيء. 29 00:01:16,790 --> 00:01:20,000 >> نوع آخر من الحلقة، رغم ذلك، في خدش قد يكون إلى الأبد، 30 00:01:20,000 --> 00:01:21,820 أو هناك أي عدد من المناهج الأخرى. 31 00:01:21,820 --> 00:01:24,150 ولكن دعونا نلقي أكثر نظرة اختصاصي، مع وجه 32 00:01:24,150 --> 00:01:27,402 التي من المحتمل دراية تامة، في الحلقات بشكل عام. 33 00:01:27,402 --> 00:01:29,110 مارك زوكربيرج: واحد شيء أن أجهزة الكمبيوتر 34 00:01:29,110 --> 00:01:31,860 هي جيدة حقا في غير تكرار الأوامر. 35 00:01:31,860 --> 00:01:33,910 كشخص، وكنت الحصول على حقا إذا كنت بالملل 36 00:01:33,910 --> 00:01:36,730 كان عليها أن تفعل الشيء نفسه الكثير من مرات على التوالي. 37 00:01:36,730 --> 00:01:40,530 ولكن جهاز كمبيوتر يمكن أن تفعل الشيء نفسه ملايين أو حتى بلايين المرات، 38 00:01:40,530 --> 00:01:43,290 وليس الحصول على بالملل، وتكون قادرة لتنفيذ ذلك بشكل جيد حقا. 39 00:01:43,290 --> 00:01:45,650 >> هكذا على سبيل المثال، إذا كنت أردت أن أتمنى للجميع 40 00:01:45,650 --> 00:01:48,840 في الفيسبوك عيد ميلاد سعيد من خلال إرسالهم رسالة بريد إلكتروني، 41 00:01:48,840 --> 00:01:51,550 قد يستغرق مني أكثر من القرن لكتابة فعلا 42 00:01:51,550 --> 00:01:53,000 كل من هذه الرسائل للجميع. 43 00:01:53,000 --> 00:01:57,780 ولكن مع بضعة أسطر من التعليمات البرمجية، يمكنني لديها نظام ارسال بريد الكتروني الى الجميع 44 00:01:57,780 --> 00:01:59,930 الراغبين في الفيسبوك لهم عيد ميلاد سعيد. 45 00:01:59,930 --> 00:02:02,730 وهذا ما هي الحلقات والسبب انهم قيمة وشيء 46 00:02:02,730 --> 00:02:04,740 أن أجهزة الكمبيوتر يمكن القيام به بشكل جيد جدا. 47 00:02:04,740 --> 00:02:05,630 >> J. DAVID مالان: حتى إذا كنت قد تم المتلقي 48 00:02:05,630 --> 00:02:07,820 بعض من CS50 و الفضاء دروببوإكس للفي وقت متأخر، 49 00:02:07,820 --> 00:02:10,590 هذا هو الواقع بالضبط ما كنا تفعل، باستخدام رمز تماما مثل ذلك. 50 00:02:10,590 --> 00:02:12,600 لدينا أساسا كبيرة جداول البيانات التي في 51 00:02:12,600 --> 00:02:15,016 تم إدخال الناس بهم أسماء وعناوين البريد الإلكتروني. 52 00:02:15,016 --> 00:02:18,160 وكتبنا القليل من التعليمات البرمجية التي يمكن تكرار عبر هذه العناوين 53 00:02:18,160 --> 00:02:21,860 وبصق عناوين فريدة من نوعها في قدم حالة أي شخص عدة مرات. 54 00:02:21,860 --> 00:02:25,120 وبعد ذلك، نرسل ل الآلي البريد الإلكتروني من بوت CS50، و 55 00:02:25,120 --> 00:02:27,190 بما في ذلك رمز القسيمة. 56 00:02:27,190 --> 00:02:29,290 >> الآن نحن ننظر أيضا في هذا بناء آخر مرة. 57 00:02:29,290 --> 00:02:33,100 وهذا خاص مثال على ماذا؟ 58 00:02:33,100 --> 00:02:35,050 لذلك، نعم، وهو تعبير منطقي. 59 00:02:35,050 --> 00:02:37,050 والمقصود شكل لالتقاط ذلك أيضا. 60 00:02:37,050 --> 00:02:39,966 كل هذه الأسئلة ل تشكيل صحيحة أو خاطئة في سكراتش 61 00:02:39,966 --> 00:02:41,590 سوف ننظر شيئا قليلا من هذا القبيل. 62 00:02:41,590 --> 00:02:43,200 ونحن نسمي هذا تعبير منطقي. 63 00:02:43,200 --> 00:02:46,170 هذا هو في الواقع صحيحة أو خاطئة، نعم أو لا. 64 00:02:46,170 --> 00:02:49,150 انها وسيلة من الرد على السؤال. 65 00:02:49,150 --> 00:02:52,420 >> وفي الوقت نفسه، ويمكنك استخدام هذه منطقية تعبيرات داخل بنيات 66 00:02:52,420 --> 00:02:54,720 مثل هذه، والتي من بالطبع هناك شروط 67 00:02:54,720 --> 00:02:57,259 أو الفروع، والمثل الشوك في الطريق. 68 00:02:57,259 --> 00:02:59,550 ويمكن أن ننظر ليس فقط مثل هذا، ولكنها يمكن أيضا 69 00:02:59,550 --> 00:03:02,080 ويرتبط إلسس معهم. 70 00:03:02,080 --> 00:03:05,820 ويمكن أن يكون في الواقع وسيلة ثلاثة شوكة في الطريق أو شوكة رباعية 71 00:03:05,820 --> 00:03:08,340 في الطريق، وذلك ببساطة عن طريق تعشش هذه الأشياء، 72 00:03:08,340 --> 00:03:10,510 كما سترى في سكراتش إذا كنت لم تقم بذلك بالفعل. 73 00:03:10,510 --> 00:03:13,550 وكما يمكنك القيام به في C كذلك. 74 00:03:13,550 --> 00:03:16,810 >> دعونا نلقي اختصاصي آخر ننظر إلى alumnist، كذلك، الذين 75 00:03:16,810 --> 00:03:21,490 قد يقدم نهجا مختلفا دعت الظروف إلى هذه الأشياء. 76 00:03:21,490 --> 00:03:24,060 >> بيل غيتس: جعل الناس القرارات كل يوم. 77 00:03:24,060 --> 00:03:27,530 على سبيل المثال، قبل أن تذهب خارج لك نوع من بيان لها إذا أن يقول: 78 00:03:27,530 --> 00:03:31,480 إذا انها تمطر ثم أنا بحاجة للحصول على سترتي. 79 00:03:31,480 --> 00:03:36,820 وأجهزة الكمبيوتر مدهشة بمجرد تقرر تلك الأنواع من البيانات، 80 00:03:36,820 --> 00:03:42,280 يتمكنوا من تنفيذ موثوق تلك الأشياء بسرعة لا تصدق. 81 00:03:42,280 --> 00:03:48,240 وحتى برنامج كمبيوتر حقا هو قليلا من الرياضيات وبعض 82 00:03:48,240 --> 00:03:53,050 إذا البيانات حيث يحصل اتخاذ القرار. 83 00:03:53,050 --> 00:03:55,020 >> J. DAVID مالان: وذلك تعلمون، كان عليه 84 00:03:55,020 --> 00:03:57,880 الناس مثل بيل غيتس، بول آلن، وغيرها 85 00:03:57,880 --> 00:04:00,240 حقا أن ركل قبالة ما يسمى أجهزة الكمبيوتر الشخصية 86 00:04:00,240 --> 00:04:01,990 الثورة منذ بضع سنوات. 87 00:04:01,990 --> 00:04:04,140 فكرت، قبل أن يغوص في بعض administrivia، 88 00:04:04,140 --> 00:04:09,920 كنا يحكي قصة من البوكيرك، متحف نيو مكسيكو للتاريخ الطبيعي 89 00:04:09,920 --> 00:04:13,650 والعلم فيها بعض من بيل غيتس وأقرب قصص بول ألن 90 00:04:13,650 --> 00:04:17,470 وروى كيف لدينا الآن أجهزة الكمبيوتر وأجهزة ماكينتوش اليوم وأكثر من ذلك. 91 00:04:17,470 --> 00:04:22,390 لهذا، على الرغم من أننا نحتاج اثنين من المتطوعين الذين لديهم أصوات السرد جيدة جدا 92 00:04:22,390 --> 00:04:23,735 لقراءة السيناريو بصوت عال. 93 00:04:23,735 --> 00:04:25,530 >> حسنا، ماذا عن في العودة إلى هناك. 94 00:04:25,530 --> 00:04:26,120 تأتي على ما يصل. 95 00:04:26,120 --> 00:04:27,770 وماذا عن هنا أمام. 96 00:04:27,770 --> 00:04:28,340 هيا. 97 00:04:28,340 --> 00:04:29,600 اتخاذ الأماكن الخاصة بك هنا. 98 00:04:29,600 --> 00:04:32,444 كما يا رفاق الخروج، وزوجين الإعلانات الإدارية. 99 00:04:32,444 --> 00:04:34,360 باجتزاء، وعملية من اختيار القسم، 100 00:04:34,360 --> 00:04:36,068 ستبدأ هذا الأربعاء حتى الجمعة. 101 00:04:36,068 --> 00:04:38,400 أكثر على أن هذا القادمة الاربعاء في المحاضرة. 102 00:04:38,400 --> 00:04:41,770 >> أقسام السوبر، وفي الوقت نفسه، هي شيء التي نقدمها الأسبوع المقبل 103 00:04:41,770 --> 00:04:45,310 حيث فئة كاملة مدعو للمشاركة في نطاق واسع إلى حد ما 104 00:04:45,310 --> 00:04:47,690 أقسام، واحد أكثر مريح، واحد أقل راحة. 105 00:04:47,690 --> 00:04:51,340 وسنعلن تفاصيل لذلك، وكذلك، في وقت لاحق هذا الاسبوع. 106 00:04:51,340 --> 00:04:53,310 >> أقسام وفي الوقت نفسه، أنفسهم، وسوف يبدأ 107 00:04:53,310 --> 00:04:57,241 في الأسبوع الثالث من الدورة، مؤشر الصفر، وهو ما يعني تلك هي بضعة أسابيع 108 00:04:57,241 --> 00:04:57,740 الخروج. 109 00:04:57,740 --> 00:04:58,450 لذلك لا داعي للقلق. 110 00:04:58,450 --> 00:05:01,014 لم تكن قد غاب بعد أي شيء من هذا القبيل. 111 00:05:01,014 --> 00:05:03,930 وفي الوقت نفسه في غضون ذلك، إذا كنت لديك أي أسئلة إداريا، 112 00:05:03,930 --> 00:05:08,120 البريد الإلكتروني نفسي وديفون وغابي وروب في هذا العنوان هنا. 113 00:05:08,120 --> 00:05:10,320 >> وأخيرا، مشكلة مجموعة 0 هو، بطبيعة الحال، خارج. 114 00:05:10,320 --> 00:05:12,320 كنت قد لاحظت ذلك على الموقع الإلكتروني للدورة و. 115 00:05:12,320 --> 00:05:14,840 ينبغي أن توفر لك مع جميع الأجوبة على الأسئلة 116 00:05:14,840 --> 00:05:18,250 قد يكون لديك على طول الطريق ل الشروع في العمل مع مجموعة مشكلة. 117 00:05:18,250 --> 00:05:21,430 لكن إذا وجدت نفسك في حاجة إلى يد العون، 118 00:05:21,430 --> 00:05:25,020 بكل الوسائل حضور ساعات العمل، الاثنين، الثلاثاء، الأربعاء والخميس 119 00:05:25,020 --> 00:05:27,290 هذا الأسبوع في المساء في أربع قاعات لتناول الطعام. 120 00:05:27,290 --> 00:05:31,650 نرى أن هناك URL للتفاصيل من حيث تكون ساعات العمل. 121 00:05:31,650 --> 00:05:34,000 >> الآن دعونا نجتمع لدينا ضيفين هنا اليوم. 122 00:05:34,000 --> 00:05:34,740 ما اسمك؟ 123 00:05:34,740 --> 00:05:35,290 >> JAY PAUL: جاي بول. 124 00:05:35,290 --> 00:05:36,880 >> J. DAVID مالان: جاي بول، لطيف لمقابلتك. 125 00:05:36,880 --> 00:05:37,330 >> HIKARI: هيكاري. 126 00:05:37,330 --> 00:05:37,975 >> J. DAVID مالان: هيكاري؟ 127 00:05:37,975 --> 00:05:38,250 >> HIKARI: هيكاري. 128 00:05:38,250 --> 00:05:38,810 >> J. DAVID مالان: هيكاري. 129 00:05:38,810 --> 00:05:39,790 تشرفنا كذلك. 130 00:05:39,790 --> 00:05:42,123 جاي بول وهيكاري ديك في أمامهم على هذه الموسيقى 131 00:05:42,123 --> 00:05:45,100 تقف اثنين من النصوص أنني المطبوعة هذا الصباح من نيو مكسيكو 132 00:05:45,100 --> 00:05:46,692 متحف التاريخ الطبيعي والعلوم. 133 00:05:46,692 --> 00:05:48,400 وما ظننت كنت تفعل في النفقات العامة 134 00:05:48,400 --> 00:05:52,830 وتصاحب التلاوة الخاصة بك البرنامج النصي وهذا التاريخ 135 00:05:52,830 --> 00:05:54,700 مع بعض الصور المرئية، أي مفاجآت. 136 00:05:54,700 --> 00:05:57,512 >> وما فعلته مقدما وprehighlight على السيناريو الخاص بك 137 00:05:57,512 --> 00:05:59,470 ما يجب أن يقرأ، وماذا يجب أن تقرأ. 138 00:05:59,470 --> 00:06:00,920 وسنقوم أساسا الفقرات مجرد بديلة. 139 00:06:00,920 --> 00:06:03,211 لذلك فمن بكثير مثلك قد فعلت في الدرجة الإنجليزية. 140 00:06:03,211 --> 00:06:06,875 وهذا ما يجبر حقا الجمهور إلى الاعتقاد في قصة هنا. 141 00:06:06,875 --> 00:06:07,600 نحن العرب؟ 142 00:06:07,600 --> 00:06:13,272 حتى القصة هنا، لدينا BASIC، وتبدأ في كامبريدج. 143 00:06:13,272 --> 00:06:18,750 >> JAY PAUL: كان شتاء، 1974، في كامبريدج، ماساتشوستس 144 00:06:18,750 --> 00:06:20,240 حيث يمكن أن يكون الشتاء البارد. 145 00:06:20,240 --> 00:06:22,800 واللحية، طويل الشعر التسرب من الكلية اسمه 146 00:06:22,800 --> 00:06:27,280 بول ألين والكدح في هارفارد مربع، واستيعابها في أفكاره. 147 00:06:27,280 --> 00:06:31,050 له الشغل الشاغل في تلك الأيام وكيفية الحصول على صديقه بيل غيتس، 148 00:06:31,050 --> 00:06:34,974 إلى ترك المدرسة والذهاب في العمل معه. 149 00:06:34,974 --> 00:06:37,890 HIKARI: الاثنان قد ذهب بالفعل من خلال عدد من المشاريع التجارية 150 00:06:37,890 --> 00:06:40,850 معا، ابتداء من البحيرة المدرسة في سياتل حيث 151 00:06:40,850 --> 00:06:45,220 التي كانوا يتقاضونها في الوقت الكمبيوتر مجانا ل اختبار الحاسوب PDP-10 في وقت المحليين 152 00:06:45,220 --> 00:06:46,580 تقاسم الشركة. 153 00:06:46,580 --> 00:06:50,930 ان الخطة كانت الأخيرة لإنهاء المدرسة وتشكل شركة برمجيات. 154 00:06:50,930 --> 00:06:53,440 وكان ألين غادر واشنطن جامعة الدولة. 155 00:06:53,440 --> 00:06:58,380 ولكن في اللحظة الأخيرة، غيتس قررت التمسك هارفارد. 156 00:06:58,380 --> 00:07:02,080 >> JAY PAUL: في ذلك اليوم، عبور هارفارد مربع، رصدت ألين يناير، 157 00:07:02,080 --> 00:07:07,530 1975 قضية للإلكترونيات الشعبية تحت عنوان وقف الأرض، 158 00:07:07,530 --> 00:07:11,900 الإسعافات الحاسبات المتوسطة في العالم لمنافسة النماذج التجارية. 159 00:07:11,900 --> 00:07:14,430 كان تحت عنوان صورة لمربع صغير 160 00:07:14,430 --> 00:07:16,160 تزين مع أضواء والتبديل. 161 00:07:16,160 --> 00:07:19,770 كان يسمى نسر MITS 8800. 162 00:07:19,770 --> 00:07:24,100 وعرف ألن هذا هو ما كان قد تبحث عنه. 163 00:07:24,100 --> 00:07:26,350 >> HIKARI: جاءت أيام المناقشة. 164 00:07:26,350 --> 00:07:30,170 ألن وغيتس يفهم أهمية نسر. 165 00:07:30,170 --> 00:07:32,480 قد تحدثوا في كثير من الأحيان حول المعالجات 166 00:07:32,480 --> 00:07:35,250 وكانوا ينتظرون لمعرفة ما سيتم القيام به معهم. 167 00:07:35,250 --> 00:07:39,770 الآن هناك عدة الكومبيوترات الصغيرة على غطاء للإلكترونيات الشعبية. 168 00:07:39,770 --> 00:07:42,830 وكان على ما يبدو أي برامج حتى الان. 169 00:07:42,830 --> 00:07:46,830 تصوروا أمة المبرمجين تنازلي على MITS. 170 00:07:46,830 --> 00:07:49,590 وهكذا وصفوه إد روبرتس، رئيس الشركة، 171 00:07:49,590 --> 00:07:53,330 يدعون أن لهم نسخة من لغة البرمجة الأساسية جاهزة تقريبا 172 00:07:53,330 --> 00:07:54,710 للنسر. 173 00:07:54,710 --> 00:07:55,570 لم يفعلوا. 174 00:07:55,570 --> 00:07:58,910 وروبرتس يجب أن يعرف أنهم لم يفعلوا ذلك. 175 00:07:58,910 --> 00:08:03,170 كان الحصول على 10 مكالمات يوميا من الناس الذين لديهم استعداد BASIC تقريبا. 176 00:08:03,170 --> 00:08:05,570 وله استجابة الأسهم كان "أول شخص 177 00:08:05,570 --> 00:08:11,090 الذي يظهر مع العمل BASIC يحصل على العقد ". 178 00:08:11,090 --> 00:08:13,910 >> JAY PAUL: غيتس وألن لم ير أحد نسر. 179 00:08:13,910 --> 00:08:17,600 انهم لم يسبق له مثيل حتى إنتل المعالج 8080 180 00:08:17,600 --> 00:08:19,060 في قلب نسر. 181 00:08:19,060 --> 00:08:21,470 لكن بضع سنوات في وقت سابق وكان ألين مكتوبة برنامج 182 00:08:21,470 --> 00:08:25,220 على جهاز كمبيوتر المركزية أن يحتذى العملية من إنتل السابق 183 00:08:25,220 --> 00:08:26,217 المعالجات الدقيقة. 184 00:08:26,217 --> 00:08:28,300 وهذه المرة أنها أن تفعل الشيء نفسه. 185 00:08:28,300 --> 00:08:31,530 186 00:08:31,530 --> 00:08:34,380 >> HIKARI: مع إنتل 8080 دليل إلى جانبه، 187 00:08:34,380 --> 00:08:37,770 جلس ألين أسفل في الكمبيوتر هارفارد PDP-10 188 00:08:37,770 --> 00:08:42,010 وكتب المضاهاة والبرمجيات الأدوات اللازمة للقيام البرمجة. 189 00:08:42,010 --> 00:08:45,820 وفي الوقت نفسه توقفت غيتس يجري إلى الطبقات وكرس نفسه 190 00:08:45,820 --> 00:08:48,120 لتصميم BASIC، استخدام كل خدعة 191 00:08:48,120 --> 00:08:53,130 كان يعرف للحصول على الحجم نزولا تحت 4 كيلو بايت. 192 00:08:53,130 --> 00:08:55,870 >> JAY PAUL: خارج في البوكيرك، حصلت إد روبرتس مكالمة من غيتس 193 00:08:55,870 --> 00:08:59,754 طلب للحصول على تفاصيل حول كيفية و التعامل مع نسر الروتينية محددة. 194 00:08:59,754 --> 00:09:01,170 لم يكن أحد قد طلب من أي وقت مضى من قبل. 195 00:09:01,170 --> 00:09:02,670 وبدأت روبرتس للحصول على المهتمين. 196 00:09:02,670 --> 00:09:05,240 197 00:09:05,240 --> 00:09:07,970 >> HIKARI: مع تطور الأدوات وتصميم جاهزة، 198 00:09:07,970 --> 00:09:10,780 كتب غيتس وألن رمز على PDP-10، 199 00:09:10,780 --> 00:09:16,060 تجنيد الطلاب في جامعة هارفارد آخر، مونتي دافيدوف، لكتابة الروتينية الرياضيات. 200 00:09:16,060 --> 00:09:19,450 بعد ليلة النهائية لل البرمجة، وحصلت ألين على متن طائرة 201 00:09:19,450 --> 00:09:22,970 لتقديم BASIC لMITS. 202 00:09:22,970 --> 00:09:25,800 أمضى ركوب الطائرة من القلق. 203 00:09:25,800 --> 00:09:28,490 ومرة أخرى في كامبريدج بوابات يثير القلق. 204 00:09:28,490 --> 00:09:32,100 قد اختبروا احتياجاتهم الأساسية و أنها عملت على المحاكي. 205 00:09:32,100 --> 00:09:35,444 ولكن ماذا لو كان المحاكي الخطأ؟ 206 00:09:35,444 --> 00:09:37,360 JAY PAUL: كما الطائرة اقترب البوكيرك، 207 00:09:37,360 --> 00:09:40,070 أدركت أن ألين لهم BASIC، الآن الوارد بدقة 208 00:09:40,070 --> 00:09:42,460 على لفة صغيرة من لكمات ورقة الشريط، فإن 209 00:09:42,460 --> 00:09:44,970 تكون عديمة الفائدة دون منفصلة برنامج، ودعا محمل، أن 210 00:09:44,970 --> 00:09:47,550 سيقول نسر كيف لقراءة الشريط ورقة الوجود 211 00:09:47,550 --> 00:09:49,620 تغذي آلة المبرقة. 212 00:09:49,620 --> 00:09:52,970 اخرج دفتر ملاحظاته وبسرعة خربش أسفل برنامج محمل 213 00:09:52,970 --> 00:09:56,819 في لغة التجميع، ثم يدويا ترجمة ذلك في 1S و 0s 214 00:09:56,819 --> 00:09:57,985 ان نسر فهم. 215 00:09:57,985 --> 00:10:00,530 216 00:10:00,530 --> 00:10:03,830 >> HIKARI: ألين أتوقع نظيفة، قليلا، شركة التكنولوجيا العالية 217 00:10:03,830 --> 00:10:05,470 يديرها الرجال في الدعاوى التجارية. 218 00:10:05,470 --> 00:10:09,210 حتى انه فوجئ عندما التقى روبرتس له في المطار تبدو وكأنها مزرعة 219 00:10:09,210 --> 00:10:10,270 اليد. 220 00:10:10,270 --> 00:10:12,070 وكان روبرتس يفاجأ أيضا. 221 00:10:12,070 --> 00:10:16,340 عندما أسقطت هارفارد مبرمج في فندق باهظة الثمن، 222 00:10:16,340 --> 00:10:20,790 كان ألين على الاعتراف بأن فإنه لا يستطيع الغرفة. 223 00:10:20,790 --> 00:10:24,510 >> JAY PAUL: MITS، في حد ذاته، و تقع في مركز تجاري قطاع المتربة. 224 00:10:24,510 --> 00:10:27,040 داخل على تشوش كان على طاولة العمل نسر 225 00:10:27,040 --> 00:10:30,390 حملت مع 5 كيلو من الذاكرة ومتصلة بواسطة كابل 226 00:10:30,390 --> 00:10:32,030 إلى آلة المبرقة. 227 00:10:32,030 --> 00:10:37,200 روبرتس وكبير المهندسين، بيل ييتس، انتظرت بترقب 228 00:10:37,200 --> 00:10:40,660 كما مثبت ألين لودر له البرنامج إلى نسر. 229 00:10:40,660 --> 00:10:44,980 بدأت المبرقة الأزيز كما سحبت الشريط الورق من خلال قارئ الشريط. 230 00:10:44,980 --> 00:10:47,215 استغرق الأمر ربما 15 دقيقة لتحميل البرنامج. 231 00:10:47,215 --> 00:10:52,110 ثم المبرقة طباعة فجأة موجه الذاكرة، ثم موجه جاهز، 232 00:10:52,110 --> 00:10:55,340 وبدأت ألين كتابة أوامر قلة من الاختبار. 233 00:10:55,340 --> 00:10:57,400 ولدهشة الجميع، عمل البرنامج. 234 00:10:57,400 --> 00:10:58,525 كانت هناك البق، بطبيعة الحال. 235 00:10:58,525 --> 00:11:02,070 ولكن الشيء الرئيسي هو أنه يعمل. 236 00:11:02,070 --> 00:11:06,570 >> HIKARI: وفي وقت لاحق، في طريقهم إلى $ 3،00 طعام الغداء في بانشو، طار دبور 237 00:11:06,570 --> 00:11:10,470 في نافذة صغيرة الشاحنات واكتوى ألين على الذراع. 238 00:11:10,470 --> 00:11:13,070 ولكن في هذه النقطة لا شيء يمكن أن يفسد المزاج. 239 00:11:13,070 --> 00:11:17,210 كان نسر الآن BASIC لها، و الأول البرمجيات التجارية لشراء منزل 240 00:11:17,210 --> 00:11:23,260 الكمبيوتر، التي أدلى بها بول ألين وبيل البوابات، والتعامل ومايكروسوفت. 241 00:11:23,260 --> 00:11:25,336 >> J. DAVID مالان: كثير بفضل لدينا اثنين من القراء. 242 00:11:25,336 --> 00:11:30,690 >> [تصفيق] 243 00:11:30,690 --> 00:11:32,520 >> J. DAVID مالان: الآن لديك اختيارك، 244 00:11:32,520 --> 00:11:35,880 قبل أن تغادر، من سباركلي أو توهج في dark-- أوه، 245 00:11:35,880 --> 00:11:40,810 الانتظار ثانية واحدة، wait-- سباركلي وتوهج في الظلام الفيل 246 00:11:40,810 --> 00:11:42,534 من CS50 نفسه تشنغ قونغ. 247 00:11:42,534 --> 00:11:43,450 HIKARI: فصيل عبد الواحد، وشكرا لكم. 248 00:11:43,450 --> 00:11:45,324 J. DAVID مالان: جميع الحق، شكرا جزيلا. 249 00:11:45,324 --> 00:11:49,855 [تصفيق] 250 00:11:49,855 --> 00:11:51,105 J. DAVID مالان: القصة الحقيقية لذلك. 251 00:11:51,105 --> 00:11:54,380 وهذا يعني أن جميع هذه آلات والسهولة التي نحن 252 00:11:54,380 --> 00:11:56,270 استخدامها الآن واتخاذ أمرا مفروغا منه، حقا 253 00:11:56,270 --> 00:12:00,070 بدأت هنا، فقط بضع خطوات من هذا المسرح الفعلي. 254 00:12:00,070 --> 00:12:03,930 والآن اليوم، إذا كنت قد يكن، هذا هو ماكسويل دوركين، الكمبيوتر 255 00:12:03,930 --> 00:12:05,810 علوم البناء، أيضا قاب قوسين أو أدنى. 256 00:12:05,810 --> 00:12:09,760 وفي الطابق الثاني من هذا لا تعليق بناء ثلاث صفحات 257 00:12:09,760 --> 00:12:12,740 من شفرة المصدر الأصلي الذي كتب بيل غيتس وبول ألين. 258 00:12:12,740 --> 00:12:14,770 في الواقع، إذا كان استخدام لك تكبير في ترون ليس فقط 259 00:12:14,770 --> 00:12:17,350 أسمائهم في النوع الأصلي، ولكن أيضا 260 00:12:17,350 --> 00:12:22,100 توقيعاتهم التي تزين و بضع سنوات عندما زار الأخير. 261 00:12:22,100 --> 00:12:25,800 >> ولكن ما كان مقنعة خاصة حول هذا هو ما كانوا يقصدونه للقيام 262 00:12:25,800 --> 00:12:29,760 وكان لكتابة البرنامج الذي من شأنه تمكين الآخرين للكتابة 263 00:12:29,760 --> 00:12:30,950 برامج خاصة بهم. 264 00:12:30,950 --> 00:12:34,280 في ذلك الوقت كان هناك مع كل هذا الجهاز نسر التي أدلى بها MITS. 265 00:12:34,280 --> 00:12:40,020 وكل ما يلزم هو وسيلة لل مما يجعل من السهل للهواة والناس 266 00:12:40,020 --> 00:12:45,300 تريد منا في هذه القاعة لبرنامج الواقع أنه بدون فهم بالضرورة 267 00:12:45,300 --> 00:12:49,060 رمز التجميع، أو آلة رمز، أو لا سمح الله، 0S و1S. 268 00:12:49,060 --> 00:12:51,190 نحن المبرمجين، مثل تلك في هذه الغرفة، ونحن 269 00:12:51,190 --> 00:12:54,070 تريد أن تكون قادرة على التعبير عن أنفسنا أكثر بكثير مثل رمز زائف 270 00:12:54,070 --> 00:12:57,330 حتى لو انها أكثر قليلا أحمق من الصعب إرضاءه تحدثنا الأسبوع الماضي. 271 00:12:57,330 --> 00:13:00,970 نحن لا نريد لكتابة رمز مثل هذا، التي لم بول ألين وبيل جيتس. 272 00:13:00,970 --> 00:13:04,850 ونحن، بدلا من ذلك، تريد كتابة التعليمات البرمجية التي يبدو قليلا أكثر ملاءمة للمستخدمين. 273 00:13:04,850 --> 00:13:07,150 >> الآن هذه هي لغة تعرف باسم BASIC. 274 00:13:07,150 --> 00:13:11,497 وأرقام الأسطر هناك ما ببساطة استخدامها لترقيم الأسطر من التعليمات البرمجية 275 00:13:11,497 --> 00:13:12,330 أن كنت تكتب. 276 00:13:12,330 --> 00:13:14,038 ليس لدينا حتى ل فعل ذلك في هذه الأيام. 277 00:13:14,038 --> 00:13:16,060 لكن يمكنك أن ترى هنا كيف PRINT "مرحبا، العالم" 278 00:13:16,060 --> 00:13:18,660 أن الواقع يفترض أن طباعة فقط. 279 00:13:18,660 --> 00:13:22,710 وما بيل وبول فعلت ذلك كان تمكين الناس من كتابة التعليمات البرمجية مثل هذا 280 00:13:22,710 --> 00:13:27,240 بدلا of-- إذا كنت تأخذ نظرة على wall-- علوم الكمبيوتر قانون مثل هذا. 281 00:13:27,240 --> 00:13:29,290 >> في الواقع، CS50 مؤخرا كان فرصة 282 00:13:29,290 --> 00:13:32,540 للجلوس مع البروفيسور هاري لويس في قسم علوم الحاسوب، الذي 283 00:13:32,540 --> 00:13:34,640 تدرس الواقع بيل غيتس قبل بضع سنوات، 284 00:13:34,640 --> 00:13:38,460 ويقف هنا قبل تلك الصفحات الثلاث مقتطفات. 285 00:13:38,460 --> 00:13:39,560 دعونا نلقي نظرة. 286 00:13:39,560 --> 00:13:45,520 >> HARRY لويس: ماذا لديك هنا هو قائمة قطعة في وقت مبكر من البرمجيات 287 00:13:45,520 --> 00:13:50,240 كتبه بيل غيتس وبول ألين، مؤسسي مايكروسوفت. 288 00:13:50,240 --> 00:13:52,570 ذلك رمز مثير للاهتمام لسببين. 289 00:13:52,570 --> 00:13:55,480 أولا وقبل كل شيء، أصبح أول منتج مايكروسوفت، 290 00:13:55,480 --> 00:14:01,810 الذي كان مترجم ل لغة البرمجة الأساسية. 291 00:14:01,810 --> 00:14:04,940 وثانيا، كان هذا واحدة من المحاولات الأولى 292 00:14:04,940 --> 00:14:10,580 لخلق مترجم عادية جدا الناس يمكن استخدام أجهزة الكمبيوتر الشخصية. 293 00:14:10,580 --> 00:14:12,670 >> لذلك كان بيل غيتس و الجامعية في جامعة هارفارد. 294 00:14:12,670 --> 00:14:14,820 بدأت التدريس في جامعة هارفارد في عام 1974. 295 00:14:14,820 --> 00:14:16,560 وقد تم ذلك في عام 1975. 296 00:14:16,560 --> 00:14:20,180 لذلك كان من أوائل في مسيرته وفي وقت مبكر من حياتي المهنية. 297 00:14:20,180 --> 00:14:23,790 أنا في الواقع يدرس في بيل دورة حول هذا الوقت. 298 00:14:23,790 --> 00:14:27,130 وكان بول ألن ليس طالب في جامعة هارفارد، لكنه 299 00:14:27,130 --> 00:14:31,020 كانت مدرسة ثانوية زميل بيل غيتس. 300 00:14:31,020 --> 00:14:33,740 إذا كنت تأتي والبحث في القائمة، وعليك 301 00:14:33,740 --> 00:14:36,230 تجد في الواقع ثلث اسم ومونت دافيدوف، 302 00:14:36,230 --> 00:14:39,260 الذي كان زميل غيتس هنا في جامعة هارفارد. 303 00:14:39,260 --> 00:14:41,340 >> حسنا، هنا ل تعليق مثيرة للاهتمام هنا. 304 00:14:41,340 --> 00:14:47,150 تقول "في 4K تستطيع حذف الجذر التربيعي ولكن لأن الحلقات لا تزال تعمل ". 305 00:14:47,150 --> 00:14:53,080 حسنا، ماذا يعني ذلك هو أن هناك كانت طريقتان لتجميع هذا البرنامج. 306 00:14:53,080 --> 00:14:57,860 كان واحدا لتشغيل على نسخة من هذا الكمبيوتر نسر 307 00:14:57,860 --> 00:15:04,310 هذا فقط كان 4K كلمات الذاكرة، 4،096 الكلمات من الذاكرة. 308 00:15:04,310 --> 00:15:07,050 لكن النسخة كبيرة زيارتها 8K. 309 00:15:07,050 --> 00:15:09,770 وهكذا ما يقول هذا هو أنه في نسخة 4K 310 00:15:09,770 --> 00:15:12,770 كان عليك أن حذف بعض مدونة لجعله مناسبا. 311 00:15:12,770 --> 00:15:14,790 واحدة من الأشياء التي سيتم حذفها 312 00:15:14,790 --> 00:15:16,290 سيكون روتين الجذر التربيعي. 313 00:15:16,290 --> 00:15:20,360 ولكن يبدو أن للا يزال ينبغي الحلقات 314 00:15:20,360 --> 00:15:26,392 العمل حتى عندما كنت تجميع أسفل لمجرد نسخة 4K الكمبيوتر. 315 00:15:26,392 --> 00:15:29,350 J. DAVID مالان: حتى واحد من الموضوعات، كما سنرى في علوم الكمبيوتر، 316 00:15:29,350 --> 00:15:31,430 هذه هي فكرة طبقات والتجريد، 317 00:15:31,430 --> 00:15:34,670 وحقا يقف على أكتاف من الناس الذين جاؤوا قبلنا، لا 318 00:15:34,670 --> 00:15:37,890 خلافا لبعض من بيل غيتس وبول آلن السرد هنا. 319 00:15:37,890 --> 00:15:40,080 وما يعنيه هذا هو أننا اليوم يمكن أن تتخذ ل 320 00:15:40,080 --> 00:15:43,490 المسلم به أن الأشياء هي في الواقع أسهل بالنسبة لنا لكتابة التعليمات البرمجية. 321 00:15:43,490 --> 00:15:47,170 في الواقع رمز، كما قلنا في الجمعة، يعرف أكثر من الناحية الفنية كما شفرة المصدر. 322 00:15:47,170 --> 00:15:52,210 وهذا مثل اللغة الإنجليزية في بناء الجملة هذا هو أكثر السليم وتعريف أكثر جيدا 323 00:15:52,210 --> 00:15:55,480 من شيء مثل رمز زائف، ل التي لا يوجد تعريف رسمي. 324 00:15:55,480 --> 00:15:58,320 >> واليوم ما نحن ذاهبون التركيز على هو رمز المصدر 325 00:15:58,320 --> 00:16:01,010 يشبه هذا الذي المسلم لأول وهلة 326 00:16:01,010 --> 00:16:02,690 يبدو خفي تماما. 327 00:16:02,690 --> 00:16:08,540 وبصراحة، انها وسيلة أكثر جماليا تعقيدا من البرنامج الأساسي هو. 328 00:16:08,540 --> 00:16:13,300 يفعل كل هذا البرنامج، أذكر، وماذا نقول؟ 329 00:16:13,300 --> 00:16:14,990 فإنه يطبع فقط "مرحبا العالم". 330 00:16:14,990 --> 00:16:19,600 وبعد النظر في كل من الاشياء نحتاج للالتفاف حول هذه العبارة بسيطة جدا. 331 00:16:19,600 --> 00:16:21,750 ولكن قبل فترة طويلة كل هذه السطور وأكثر 332 00:16:21,750 --> 00:16:24,800 لن يكون له معنى أفضل بكثير لك. 333 00:16:24,800 --> 00:16:26,940 >> وتدفق على النحو التالي. 334 00:16:26,940 --> 00:16:31,220 ما نحتاجه في حوزتنا هو اتخاذ رمز، مثل مصدر 335 00:16:31,220 --> 00:16:32,340 التعليمات البرمجية التي رأينا فقط. 336 00:16:32,340 --> 00:16:35,060 ونحن بحاجة إلى برنامج جديد لتشغيله خلال. 337 00:16:35,060 --> 00:16:39,130 نحتاج الخوارزميات التي يمكن تحويل شفرة المصدر، ومثل هذا، 338 00:16:39,130 --> 00:16:41,932 إلى رمز الكائن، 0S و1S. 339 00:16:41,932 --> 00:16:43,890 وبعبارة أخرى، ما ونحن في طريقنا لمعرفة اليوم 340 00:16:43,890 --> 00:16:46,620 وكيفية القيام بذلك، والكتابة رمز المصدر في القمة، 341 00:16:46,620 --> 00:16:49,930 تمريرها كمدخل إلى خاص برنامج يعرف باسم مترجم، 342 00:16:49,930 --> 00:16:52,140 ونحن في طريقنا لإنتاج رمز الكائن. 343 00:16:52,140 --> 00:16:54,600 الذي هو مجرد وسيلة لنزوة قائلا سنتخذ شيء 344 00:16:54,600 --> 00:16:58,350 يشبه هذا، تمر عليه في برنامج يسمى مترجم، 345 00:16:58,350 --> 00:17:01,210 إنتاج رمز الكائن يشبه هذا. 346 00:17:01,210 --> 00:17:04,720 >> لذلك فان هذه هي حرفيا أنماط 0S و1S 347 00:17:04,720 --> 00:17:08,550 تكون مفهومة من قبل كمبيوتر إنتل في هذه الأيام، 348 00:17:08,550 --> 00:17:12,480 أنه إذا فسرت من قبل وحدة المعالجة المركزية، أدمغة داخل جهاز كمبيوتر، 349 00:17:12,480 --> 00:17:16,130 ستطبع حرفيا، بكل بساطة، "مرحبا العالم". 350 00:17:16,130 --> 00:17:19,670 الآن هناك طريقة أكثر 0S و1S مما كنت آمل قد تكون ضرورية لذلك. 351 00:17:19,670 --> 00:17:22,520 ولكن هذا لأننا بناء على قدر كبير من التعقيد 352 00:17:22,520 --> 00:17:24,270 أننا يمكن أن تتخذ من الآن فصاعدا أمرا مفروغا منه. 353 00:17:24,270 --> 00:17:27,869 وبعبارة أخرى، والكثير من الناس الذكية قدموا لنا الكثير من الأدوات باردة 354 00:17:27,869 --> 00:17:32,480 والبرامج القوية التي تربطنا ويمكن الآن تقديم مشاريع خاصة بنا. 355 00:17:32,480 --> 00:17:33,400 >> لذلك دعونا نبدأ. 356 00:17:33,400 --> 00:17:36,640 بينما يوم الجمعة الماضي، و لمشكلة تعيين 0 هذا الأسبوع، 357 00:17:36,640 --> 00:17:39,000 فسوف يكون اللعب في العالم الذي يبدو مثل هذا. 358 00:17:39,000 --> 00:17:42,180 ابتداء من اليوم ومشكلة مجموعة 1 في الاسبوع المقبل، رمز 359 00:17:42,180 --> 00:17:45,410 سوف ننظر قليلا أكثر خفي، ولكن وظيفيا 360 00:17:45,410 --> 00:17:46,940 سوف تكون هي نفسها. 361 00:17:46,940 --> 00:17:50,770 حتى اشعار أعلى هو خدش، أسفل هو C. بصراحة خدش 362 00:17:50,770 --> 00:17:52,780 هو الكثير من المستخدمين ودية وسهلة المنال. 363 00:17:52,780 --> 00:17:56,890 ولكن إذا قارنت الآن كبار بصريا ل أسفل، هناك نوع من 1-1 364 00:17:56,890 --> 00:17:59,690 المراسلات بين قطع اللغز واللغة 365 00:17:59,690 --> 00:18:00,870 نحن على وشك أن تلعب معه. 366 00:18:00,870 --> 00:18:04,420 على وجه الخصوص، ويقول، و لغز الأزرق قطعة حتى اعلى، 367 00:18:04,420 --> 00:18:08,370 ما يعادل ما يبدو إلى ما الكلمة أو عبارة خاصة في هذه اللغة 368 00:18:08,370 --> 00:18:09,062 دعا C؟ 369 00:18:09,062 --> 00:18:09,770 الجمهور: Printf. 370 00:18:09,770 --> 00:18:10,728 J. DAVID مالان: Printf. 371 00:18:10,728 --> 00:18:12,140 وهذا يعني الطباعة تنسيقها. 372 00:18:12,140 --> 00:18:15,240 وهذا مجرد نزوة طريقة للقول في printf C 373 00:18:15,240 --> 00:18:18,615 سيكون بيان أو وظيفة التي تقوم بطباعة شيء على الشاشة. 374 00:18:18,615 --> 00:18:19,990 ماذا الطباعة إلى الشاشة؟ 375 00:18:19,990 --> 00:18:23,627 مهما كنت أقول ذلك لداخل من يقتبس، داخل قوسين. 376 00:18:23,627 --> 00:18:25,460 ذلك مرة أخرى، باعتراف الجميع، هناك الكثير من الاشياء 377 00:18:25,460 --> 00:18:27,990 أن لديك لنضع في اعتبارنا، قوسين، ونقلت والفاصلة المنقوطة، 378 00:18:27,990 --> 00:18:28,656 وكل هذا. 379 00:18:28,656 --> 00:18:30,600 ولكن كل ذلك هو نوع من جانب نقطة. 380 00:18:30,600 --> 00:18:33,660 الوجبات الجاهزة للاهتمام في الوقت الراهن هو أن كتلة رأي في خدش 381 00:18:33,660 --> 00:18:37,520 ما يعادل إلى حد كبير البيان printf في C. 382 00:18:37,520 --> 00:18:41,390 >> وفي الوقت نفسه، وقطعة اللغز الأصفر حتى اعلى، عند النقر عليها العلم الأخضر، 383 00:18:41,390 --> 00:18:44,736 ربما يعادل ما الكلمة الرئيسية هنا؟ 384 00:18:44,736 --> 00:18:45,360 الجمهور: الرئيسية. 385 00:18:45,360 --> 00:18:46,359 J. DAVID مالان: هكذا الرئيسية. 386 00:18:46,359 --> 00:18:47,410 ربما الباحث، ربما الفراغ. 387 00:18:47,410 --> 00:18:51,280 ولكن النوع الرئيسي من الأصوات مثل من المهم، بل هو عليه. 388 00:18:51,280 --> 00:18:54,080 لذلك عندما ينقر العلم الأخضر هو، مرة أخرى، وقطعة اللغز 389 00:18:54,080 --> 00:18:56,390 التي تنطلق في برنامج سكراتش بأكمله. 390 00:18:56,390 --> 00:19:02,140 ولكننا سنبدأ الآن الدعوة أن أهم، هذه الوظيفة المعروفة والرئيسية. 391 00:19:02,140 --> 00:19:06,410 >> الآن سنقوم في الوقت نفسه تعميم هذا على النحو التالي. 392 00:19:06,410 --> 00:19:08,780 يمكن أن نسميه أقول ظيفة. 393 00:19:08,780 --> 00:19:10,580 وأنه قد تبدو على وجه التحديد من هذا القبيل. 394 00:19:10,580 --> 00:19:11,770 حسنا، ماذا عن الحلقات؟ 395 00:19:11,770 --> 00:19:16,540 إذا كنا نريد لبدء تحويل أو ترجمة أكثر في خدش لC، 396 00:19:16,540 --> 00:19:19,400 هذا شيء هنا على ما يبدو فقط يقول "مرحبا العالم" إلى الأبد. 397 00:19:19,400 --> 00:19:23,060 حتى إذا كنت ربط هذه مخطوطات مع القط في خدش، 398 00:19:23,060 --> 00:19:26,560 انها مجرد الذهاب للحفاظ قائلا في نوع من فقاعة الكرتون، 399 00:19:26,560 --> 00:19:29,922 "مرحبا العالم، مرحبا العالم، مرحبا العالم "، nauseum الإعلانية، إلى الأبد. 400 00:19:29,922 --> 00:19:33,130 إذا كنا نريد أن نفعل شيئا من هذا القبيل في C، انها سوف ننظر قليلا خفي. 401 00:19:33,130 --> 00:19:35,463 ولكن يمكننا تحقيق نفس النتائج، كما سنقوم في نهاية المطاف 402 00:19:35,463 --> 00:19:36,861 معرفة، مع جملة من هذا القبيل. 403 00:19:36,861 --> 00:19:39,360 انا ذاهب الى استخدام printf مرة أخرى، لأنه في نهاية اليوم 404 00:19:39,360 --> 00:19:42,040 أريد أن طباعة "مرحبا العالم". 405 00:19:42,040 --> 00:19:45,610 وأنا على ما يبدو باستخدام الكلمة ليست إلى الأبد. 406 00:19:45,610 --> 00:19:47,320 انها بدلا كلمة الوقت. 407 00:19:47,320 --> 00:19:49,650 ولكن فقط لغويا في اللغة الإنجليزية، في حين نوع من 408 00:19:49,650 --> 00:19:52,120 يقترح نوعا من حلقة أو دورة. 409 00:19:52,120 --> 00:19:55,070 >> بحيث يحدث أن تكون الكلمة التي تستخدم C. 410 00:19:55,070 --> 00:20:00,700 وبينما صحيح، لماذا حين صحيح يعني فعليا إلى الأبد؟ 411 00:20:00,700 --> 00:20:04,240 حسنا، في حين، كما سنقوم قريبا نقدر كل أكثر، 412 00:20:04,240 --> 00:20:08,140 لديه هذا جملة محاطة بأقواس بجانبه حيث يمكنك وضع تعبير منطقي. 413 00:20:08,140 --> 00:20:11,360 وطالما أن التعبير هو الصحيح، هذا الرمز، 414 00:20:11,360 --> 00:20:14,750 كما تدل بين هذين الأقواس المعقوفة ونحن سوف ندعو لهم، 415 00:20:14,750 --> 00:20:16,880 سوف نستمر تشغيلها مرة أخرى ومرة ​​أخرى. 416 00:20:16,880 --> 00:20:18,410 >> ذلك صحيح هو الصحيح. 417 00:20:18,410 --> 00:20:20,900 وذلك في حين سيلة حقيقية مجرد القيام بذلك إلى الأبد. 418 00:20:20,900 --> 00:20:23,480 انها تقريبا غبي بناء للتعبير عن نفسك. 419 00:20:23,480 --> 00:20:26,590 لكن لم يكن هناك إلى الأبد الكلمة في C. بينما كان هناك. 420 00:20:26,590 --> 00:20:29,390 وكان هناك بسيط جدا التعبير منطقية مثل صحيح. 421 00:20:29,390 --> 00:20:32,210 وحتى هذا، وسنرى، يحقق نفس النتيجة. 422 00:20:32,210 --> 00:20:33,890 >> وإلا كيف يمكن أن تقوم بتنفيذ حلقة؟ 423 00:20:33,890 --> 00:20:36,980 حسنا، في خدش كنت قد رمز القرص الثابت عدد محدد 424 00:20:36,980 --> 00:20:39,430 التكرارات في حلقة هنا. 425 00:20:39,430 --> 00:20:43,210 وهكذا هذا هو بالضبط ما كنا قد تفعل في هذا الإصدار من C، 426 00:20:43,210 --> 00:20:46,140 حيث لدينا ما يسمى لحلقة. 427 00:20:46,140 --> 00:20:49,850 وللحلقة هنا يجري تكرار، بشكل غامض إلى حد ما، 428 00:20:49,850 --> 00:20:54,100 من القيمة 0 على ما يصل ولكن لأقل من 10. 429 00:20:54,100 --> 00:20:55,955 >> الآن المتغيرات في خدش. 430 00:20:55,955 --> 00:20:57,830 قد لا يكون لديهم مناسبة لاستخدام هذه. 431 00:20:57,830 --> 00:21:02,516 ولكن ما هي النقطة، بشكل عام، متغير لم نقول الأسبوع الماضي؟ 432 00:21:02,516 --> 00:21:03,015 ما هذا؟ 433 00:21:03,015 --> 00:21:03,780 >> الجمهور: نقاط. 434 00:21:03,780 --> 00:21:05,200 >> J. DAVID مالان: لنشير؟ 435 00:21:05,200 --> 00:21:05,700 أوه، نقطة. 436 00:21:05,700 --> 00:21:07,620 OK، تتبع من النقاط، على سبيل المثال، في لعبة. 437 00:21:07,620 --> 00:21:09,510 أو أكثر القيام عموما ما مع متغير؟ 438 00:21:09,510 --> 00:21:10,450 ما هي فائدة لهم؟ 439 00:21:10,450 --> 00:21:10,825 >> الجمهور: الذاكرة. 440 00:21:10,825 --> 00:21:11,750 >> J. DAVID مالان: نعم، حتى الذاكرة. 441 00:21:11,750 --> 00:21:13,000 انها لتخزين شيء. 442 00:21:13,000 --> 00:21:17,336 وهذا النوع من سخيفة أنا البصرية المستخدمة كانت آخر مرة مثل هذا عاء زجاجي. 443 00:21:17,336 --> 00:21:19,710 وإذا أردنا أن تخزين شيء داخل متغير، 444 00:21:19,710 --> 00:21:21,918 على سبيل المثال الآن ل القيمة هي ستة لأن هناك 445 00:21:21,918 --> 00:21:23,450 هي ست كرات بينغ بونغ هنا. 446 00:21:23,450 --> 00:21:26,158 انها مجرد نوع من التخزين الحاوية التي تحت غطاء محرك السيارة 447 00:21:26,158 --> 00:21:30,030 ويتم تنفيذ مع بت، 0S و1S، ولكن يحدث كمبيوتر للقيام بذلك. 448 00:21:30,030 --> 00:21:32,900 >> حتى في خدش، وإذا كنا تريد أن يكون متغير، 449 00:21:32,900 --> 00:21:34,840 يمكننا استخدام كتلة البرتقال من هذا القبيل. 450 00:21:34,840 --> 00:21:37,050 وسوف ندعو في هذا العداد في هذه الحالة بالذات. 451 00:21:37,050 --> 00:21:38,890 أنا تهيئة إلى 0. 452 00:21:38,890 --> 00:21:41,080 وما أنا ثم تفعل؟ 453 00:21:41,080 --> 00:21:44,780 إلى الأبد، ويقول العداد، التي إذا كنت تلعب مع أنه في خدش، 454 00:21:44,780 --> 00:21:45,780 عليك انظر فقط خدش. 455 00:21:45,780 --> 00:21:49,920 القط أو أيا كان زي كنت وضعت على له سيتحدث الرقم في السؤال. 456 00:21:49,920 --> 00:21:52,840 >> التغيير مكافحة بنسبة 1 هي مثل تزايد بنسبة 1. 457 00:21:52,840 --> 00:21:56,580 وهكذا هذا هو الذهاب الى عد من ما ماذا في ذلك؟ 458 00:21:56,580 --> 00:21:59,114 من 0 سمسم اللانهاية، أو حتى فواصل خدش، 459 00:21:59,114 --> 00:22:01,030 أو حتى نوع من يفقد الاهتمام في الفرجة 460 00:22:01,030 --> 00:22:02,650 كيف عالية فيستطيع فعلا. 461 00:22:02,650 --> 00:22:04,800 >> فكيف يمكن أن نقوم بتحويل هذا إلى C؟ 462 00:22:04,800 --> 00:22:06,480 انها سوف ننظر قليلا خفي. 463 00:22:06,480 --> 00:22:08,896 ولكن مرة أخرى، إذا نظرتم الى كل هذه الخطوط بشكل فردي 464 00:22:08,896 --> 00:22:10,410 أنها نوع من تشكيلة الفريق عموما. 465 00:22:10,410 --> 00:22:13,526 لذلك يبدو كثافة العمليات هو الذهاب الى لدينا بعض معنى خاص في C. 466 00:22:13,526 --> 00:22:14,400 سنرى ذلك مرة أخرى. 467 00:22:14,400 --> 00:22:15,810 بوصفها جانبا فهذا يعني عدد صحيح. 468 00:22:15,810 --> 00:22:16,990 ذلك يعني مجرد عدد. 469 00:22:16,990 --> 00:22:18,920 لذلك هذا هو نوع من الزجاج وعاء أريد، واحد 470 00:22:18,920 --> 00:22:21,120 التي يمكن تخزين أرقام، لا كرات بينغ بونغ. 471 00:22:21,120 --> 00:22:25,520 وانا ذاهب الى استخدام علامة المساواة هناك لتعيينه قيمة 0. 472 00:22:25,520 --> 00:22:29,440 ولهذا تماما مثل مجموعة مضاد ل0، ولكن في C. 473 00:22:29,440 --> 00:22:32,840 >> وفي الوقت نفسه، بينما صحيح، وكان ذلك ما يعادلها، بطبيعة الحال، إلى الأبد، 474 00:22:32,840 --> 00:22:35,980 على الرغم من انها خفي قليلا، ثم داخل الأقواس المعقوفة. 475 00:22:35,980 --> 00:22:39,188 ويمكنك التفكير في هذه الأقواس المعقوفة، حيث يمكنك كتابة على لوحة المفاتيح، 476 00:22:39,188 --> 00:22:43,110 كما يجري حقا مثل انحناء في هذه الكتل حلقة صفراء في خدش. 477 00:22:43,110 --> 00:22:45,700 تحتضن عدة أسطر من التعليمات البرمجية. 478 00:22:45,700 --> 00:22:48,120 >> Printf هو الحصول على مخيف قليلا لأنني الآن 479 00:22:48,120 --> 00:22:51,120 رؤية يقتبس ليس فقط بين قوسين. 480 00:22:51,120 --> 00:22:55,160 ولكن ماذا هو جديد بناء جملة في هذا المثال؟ 481 00:22:55,160 --> 00:22:57,300 هناك في المئة د. 482 00:22:57,300 --> 00:22:58,551 ثم مائل ن هناك. 483 00:22:58,551 --> 00:23:00,883 نحن لم نرى ذلك من قبل، حتى على الرغم من أنني لم أذكر ذلك. 484 00:23:00,883 --> 00:23:01,886 ثم هناك فاصلة. 485 00:23:01,886 --> 00:23:03,010 وبعد ذلك هناك عداد. 486 00:23:03,010 --> 00:23:05,010 >> ولكن سنرى في مجرد لحظة أن هذا هو مجرد 487 00:23:05,010 --> 00:23:09,080 وسيلة معيارية للقول طباعة "رقم عشري"، الاقتباس، نهاية الاقتباس، 488 00:23:09,080 --> 00:23:10,500 بعض رقم عشري. 489 00:23:10,500 --> 00:23:13,370 ولكن انا ذاهب لاقول لكم لاحقا ما هو عدد عشري. 490 00:23:13,370 --> 00:23:16,835 حتى أن هناك فاصلة في هذا الخط قائلا printf، 491 00:23:16,835 --> 00:23:18,710 يعني المضي قدما والطباعة بعض رقم عشري. 492 00:23:18,710 --> 00:23:23,110 أوه، وبالمناسبة، فإن العدد مهما كانت قيمة هذا المتغير. 493 00:23:23,110 --> 00:23:25,880 وذلك لجعل هذا أكثر واضح، سنرى مثالا 494 00:23:25,880 --> 00:23:30,930 قبل فترة طويلة تنطوي بالضبط printf في سياق برامج حقيقية C. 495 00:23:30,930 --> 00:23:33,472 >> الآن فقط لانهاء بعض من هذه التركيبات. 496 00:23:33,472 --> 00:23:36,680 التعبيرات المنطقية، قد لا يكون مناسبة لاستخدام هذه في البرنامج 497 00:23:36,680 --> 00:23:39,450 ولكن قد بشكل جيد للغاية، خاصة إذا استخدام الظروف. 498 00:23:39,450 --> 00:23:43,460 وذلك من هذين المثالين الصفر يعني إذا كان x أقل من ذ، 499 00:23:43,460 --> 00:23:48,770 أو إذا كان x أقل من ذ و y أقل من ض، كيف يمكن أن نترجم ذلك؟ 500 00:23:48,770 --> 00:23:50,810 >> حسنا، في C انها مجرد سوف تبدو هذه. 501 00:23:50,810 --> 00:23:55,300 وهناك القليل خفي، أكثر قوسين، بعض الوات غريبة، ولكن في الأساس 502 00:23:55,300 --> 00:23:59,160 أفكار بسيطة بقدر ما هي في قطعة اللغز العالم. 503 00:23:59,160 --> 00:24:02,690 نحن ببساطة فحص إذا كان هناك شيء أقل من شيء آخر. 504 00:24:02,690 --> 00:24:03,910 >> ماذا عن الشروط؟ 505 00:24:03,910 --> 00:24:09,710 باختصار باللغة الإنجليزية، ماذا يفعل هذا قطعة من التعليمات البرمجية خدش لا هل يقول؟ 506 00:24:09,710 --> 00:24:11,050 >> الجمهور: يقارن رقمين. 507 00:24:11,050 --> 00:24:13,760 >> J. DAVID مالان: يقارن اثنين أرقام، وإذا كان x أقل من ذ 508 00:24:13,760 --> 00:24:14,860 تقول قدر. 509 00:24:14,860 --> 00:24:18,080 إذا كان x أكبر من ذ كما تقول الكثير، وآخر 510 00:24:18,080 --> 00:24:20,740 إذا كان x يساوي Y تقول قدر. 511 00:24:20,740 --> 00:24:22,180 الآن أين x و y تأتي من؟ 512 00:24:22,180 --> 00:24:22,680 من يدري. 513 00:24:22,680 --> 00:24:25,380 هذه قطعة من خدش الكود هو خارج السياق. 514 00:24:25,380 --> 00:24:29,050 ولكن ما نريد القيام به الآن هو ترجمة هذا لمجرد لحظة لنرى. 515 00:24:29,050 --> 00:24:31,660 >> بحيث يمكنك الحصول على راحة هذا الأسبوع في مشكلة تعيين 516 00:24:31,660 --> 00:24:34,190 0 اللعب في هذا العالم على اليسار، وتحقيق 517 00:24:34,190 --> 00:24:36,940 أن الأفكار لا تتغير هذا الأسبوع أو المقبل أو بعده. 518 00:24:36,940 --> 00:24:38,690 نحن ببساطة الذهاب الى البدء في كتابة الأشياء 519 00:24:38,690 --> 00:24:41,240 بطريقة مختلفة مع شركائنا لوحة المفاتيح بدلا من الماوس لدينا. 520 00:24:41,240 --> 00:24:44,577 >> حتى إذا كان x أقل من ذ، و هناك بعض قوسين هناك، 521 00:24:44,577 --> 00:24:47,160 ثم هناك بعض الأقواس المعقوفة مرة أخرى لأنه نوع من تغليف 522 00:24:47,160 --> 00:24:48,970 تماما مثل قطع اللغز الصفراء القيام به. 523 00:24:48,970 --> 00:24:53,000 وانا ذاهب الى printf س أقل من ذ وهكذا دواليك. 524 00:24:53,000 --> 00:24:56,540 >> ما هو لطيف حول C، كما ترون هنا، 525 00:24:56,540 --> 00:25:00,480 هو أنك لا تحصل على هذا التداخل، التعشيش، تعشش هذا بالضرورة 526 00:25:00,480 --> 00:25:02,220 الذهاب الى دفع التعليمات البرمجية إلى اليمين. 527 00:25:02,220 --> 00:25:04,990 هل يمكن أن يكون كل شيء بدلا تشكيلة مثل هذه بدقة. 528 00:25:04,990 --> 00:25:08,960 ولكن هذا مجرد جمالية التفاصيل سنرى مرة أخرى قبل فترة طويلة. 529 00:25:08,960 --> 00:25:09,660 >> كل الحق. 530 00:25:09,660 --> 00:25:13,290 بحيث يعيدنا إلى هذا البرنامج خفي المظهر. 531 00:25:13,290 --> 00:25:15,180 دعونا في الواقع كتابة بعض التعليمات البرمجية. 532 00:25:15,180 --> 00:25:16,830 الآن كيف يمكنك أن تذهب نحو كتابة التعليمات البرمجية؟ 533 00:25:16,830 --> 00:25:21,310 كل هذه السنوات التي كنت قد تملكها ماك أو PC، المكتبي أو المحمول، 534 00:25:21,310 --> 00:25:24,520 لقد كان لكم في الواقع القدرة للبدء في كتابة كود البرمجة. 535 00:25:24,520 --> 00:25:27,050 ولكن ربما كنت في عداد المفقودين نوع خاص من البرنامج. 536 00:25:27,050 --> 00:25:28,470 أنت بالتأكيد يمكن كتابة التعليمات البرمجية. 537 00:25:28,470 --> 00:25:30,740 ولكن لا يمكنك بالضرورة، من خارج منطقة الجزاء، 538 00:25:30,740 --> 00:25:34,210 تحويل هذا الكود إلى رمز الكائن، 0S و1S 539 00:25:34,210 --> 00:25:35,619 دون ما على جهاز الكمبيوتر الخاص بك؟ 540 00:25:35,619 --> 00:25:36,410 الجمهور: مترجم. 541 00:25:36,410 --> 00:25:37,630 J. DAVID مالان: لذا مترجم، والحق. 542 00:25:37,630 --> 00:25:39,730 الآن ربما معظمكم لا تملك مترجم، 543 00:25:39,730 --> 00:25:41,259 لم تحميلها مترجم. 544 00:25:41,259 --> 00:25:44,300 ولكن سترى يمكنك تحميل البرنامج مثل معظم أي قطعة أخرى من البرامج. 545 00:25:44,300 --> 00:25:47,470 في عالم ماك OS، كنت قد تحميل أو بتنزيلها بالفعل 546 00:25:47,470 --> 00:25:50,437 ما يسمى كسكودي أو مجلس التعاون الخليجي أو رنة. 547 00:25:50,437 --> 00:25:52,270 إذا كنت تأتي من قد النوافذ العالم لك 548 00:25:52,270 --> 00:25:56,190 تم تحميل البصرية ستوديو، فيجوال بيسك، البيئات من هذا القبيل. 549 00:25:56,190 --> 00:25:59,200 هناك العشرات من المجمعين في هذه الأيام التي قد تستخدمها. 550 00:25:59,200 --> 00:26:01,940 ولكن على المدى القصير من هنا غير أنه سيكون من الألم 551 00:26:01,940 --> 00:26:04,480 وبصراحة، والتكنولوجية كابوس لمئات 552 00:26:04,480 --> 00:26:07,680 من الناس مع مختلف تكوينات الكمبيوتر لجميع 553 00:26:07,680 --> 00:26:09,800 تكوين الأجهزة الخاصة بهم في بنفس الطريقة تماما 554 00:26:09,800 --> 00:26:11,700 حتى نتمكن جميعا أن نكون على نفس الصفحة. 555 00:26:11,700 --> 00:26:15,240 >> فماذا نحن، بدلا من ذلك، القيام في CS50 ونعطيك 556 00:26:15,240 --> 00:26:18,349 بيئة قياسية، و بيئة لينكس هذا 557 00:26:18,349 --> 00:26:20,140 سوف ننظر قليلا شيء من هذا القبيل. 558 00:26:20,140 --> 00:26:22,980 سترى أكثر من هذا في مشكلة تعيين 1 المواصفات التي 559 00:26:22,980 --> 00:26:25,330 سوف يذهب على الانترنت هذه الليلة الجمعة. 560 00:26:25,330 --> 00:26:28,360 >> وماذا يعني هذا هو أنك من الآن فصاعدا 561 00:26:28,360 --> 00:26:32,060 سوف تكون قادرة على تحميل وتثبيت برنامج 562 00:26:32,060 --> 00:26:33,650 ودعا الأجهزة CS50. 563 00:26:33,650 --> 00:26:36,275 وأنت تسير لتحميل و تثبيت برنامج آخر يسمى 564 00:26:36,275 --> 00:26:40,300 وهبرفيسر، الذي هو مجرد طريقة نزوة لتحقيق ذلك. 565 00:26:40,300 --> 00:26:44,600 سواء كنت تملك جهاز ماكنتوش أو كمبيوتر شخصي أو كمبيوتر لينكس أو سولاريس كمبيوتر، 566 00:26:44,600 --> 00:26:46,830 أو أيا كان التشغيل مجنون النظام الذي تقوم بتشغيل، 567 00:26:46,830 --> 00:26:49,820 وأنت تسير لتحميل البرنامج يسمى هذا هبرفيسر 568 00:26:49,820 --> 00:26:53,350 الذهاب لتشغيل CS50 الأجهزة على جهاز الكمبيوتر الخاص بك 569 00:26:53,350 --> 00:26:55,430 بغض النظر عن ما هو نظام التشغيل الخاص بك. 570 00:26:55,430 --> 00:27:00,640 وهبرفيسر وبعبارة أخرى تحويل الاشياء لدينا إلى أي لغة، 571 00:27:00,640 --> 00:27:03,850 مهما تعليماتكم يفهم الكمبيوتر الخاص. 572 00:27:03,850 --> 00:27:04,962 >> لذلك هذا هو طبقات. 573 00:27:04,962 --> 00:27:06,920 ومرة أخرى، وهذا هو النوع من مواضيعي في الكمبيوتر 574 00:27:06,920 --> 00:27:08,722 العلم، وبناء على رأس الأمور. 575 00:27:08,722 --> 00:27:09,680 قد يكون لديك ويندوز. 576 00:27:09,680 --> 00:27:10,710 قد يكون لديك نظام التشغيل Mac OS. 577 00:27:10,710 --> 00:27:12,960 ولكن اعتبارا من الاسبوع المقبل كنت الذهاب الى بتنزيلها 578 00:27:12,960 --> 00:27:14,980 قطعة من البرمجيات الحرة دعا مراقب أجهزة افتراضية. 579 00:27:14,980 --> 00:27:17,800 وأنت تسير لبتنزيلها قطعة من البرمجيات دعا الأجهزة CS50. 580 00:27:17,800 --> 00:27:21,050 >> ما يجري لتشغيل في هبرفيسر، التي سوف يتم تشغيلها على جهاز الكمبيوتر الخاص بك. 581 00:27:21,050 --> 00:27:23,030 والنتيجة النهائية هي أن كل واحد منا سوف 582 00:27:23,030 --> 00:27:26,220 لديك نافذة بسيطة مثل هذا على جهاز Mac أو PC 583 00:27:26,220 --> 00:27:30,160 أن يعطينا الوهم جميع تشغيل نظام التشغيل نفسه، 584 00:27:30,160 --> 00:27:32,800 دون أي شيء آخر التأثير على جهاز الكمبيوتر الخاص بك. 585 00:27:32,800 --> 00:27:34,870 ويمكنك ملء الشاشة انها تتصرف وأساسا 586 00:27:34,870 --> 00:27:37,550 كما لو كنت تقوم بتشغيل نظام التشغيل لينكس يسمى، 587 00:27:37,550 --> 00:27:40,270 وهو ما CS50 ويستند الجهاز على. 588 00:27:40,270 --> 00:27:42,930 >> لذلك دعونا فعلا استخدام هذا الآن لكتابة البرنامج. 589 00:27:42,930 --> 00:27:45,450 يمكنك كتابة برنامج باستخدام Microsoft Word. 590 00:27:45,450 --> 00:27:48,160 يمكنك كتابة برنامج باستخدام برنامج TextEdit، أو المفكرة، 591 00:27:48,160 --> 00:27:51,880 أو الدفتر، أو الى حد كبير أي كلمة برنامج معالجة كنت قد استخدمت من أي وقت مضى. 592 00:27:51,880 --> 00:27:55,174 ولكن الحقيقة هي أنك لا ينبغي حقا استخدام أي من تلك البرامج. 593 00:27:55,174 --> 00:27:57,840 أنت بالتأكيد لا ينبغي استخدام شيء مثل مايكروسوفت وورد، والتي 594 00:27:57,840 --> 00:28:01,120 لديه تواجه والمائل جريئة، و الخطوط أكبر وأصغر الخطوط، 595 00:28:01,120 --> 00:28:03,560 لأن الكمبيوتر لا نهتم أي من ذلك. 596 00:28:03,560 --> 00:28:05,600 كل الكمبيوتر الذهاب الى يهمني هو 597 00:28:05,600 --> 00:28:09,040 الإنجليزية مثل تعليمات مكتوبة في C. 598 00:28:09,040 --> 00:28:12,050 >> فماذا سنفعل داخل من الأجهزة CS50 599 00:28:12,050 --> 00:28:14,290 يتم استخدام برنامج بحرية المتاحة، وانها 600 00:28:14,290 --> 00:28:17,360 مثبتة مسبقا في هذا الأجهزة، ودعا Gedit. 601 00:28:17,360 --> 00:28:22,280 وGedit هو مجرد السوبر بسيطة محرر نصوص مثل برنامج TextEdit ماك OS، و 602 00:28:22,280 --> 00:28:26,200 مثل ويندوز المفكرة أن يحدث ل ننظر شيئا قليلا من هذا القبيل. 603 00:28:26,200 --> 00:28:28,910 >> لذلك دعونا في الواقع لا ننظر إلى هذه الشرائح. 604 00:28:28,910 --> 00:28:32,580 ولكن دعونا ندخل في الواقع البيئة نفسها. 605 00:28:32,580 --> 00:28:36,090 انا ذاهب الى المضي قدما و تسجيل الدخول، في هذا الإطار الآخر، 606 00:28:36,090 --> 00:28:40,910 إلى بلدي CS50 الأجهزة التي لدي مثبتة مسبقا على جهاز الكمبيوتر المحمول هنا. 607 00:28:40,910 --> 00:28:43,771 >> لاحظ أنه، مثل ويندوز و ماك OS، انها حصلت بعض القوائم. 608 00:28:43,771 --> 00:28:45,520 مثل ويندوز أنه يضع عليه هناك بدلا من ذلك 609 00:28:45,520 --> 00:28:47,020 نظام التشغيل Mac OS، الأمر الذي يضع عليه هناك. 610 00:28:47,020 --> 00:28:48,930 ولكن الواقع هو انها كل نوع من الشيء نفسه. 611 00:28:48,930 --> 00:28:50,770 وهنا ككل مجموعة من البرامج. 612 00:28:50,770 --> 00:28:51,770 هناك دروببوإكس. 613 00:28:51,770 --> 00:28:54,780 هناك مجموعة كاملة من الملحقات، برامج الرسوم البيانية التي سنقوم 614 00:28:54,780 --> 00:28:56,430 استخدامها لاحقا في الأجل للمجموعات المشكلة. 615 00:28:56,430 --> 00:28:59,650 هناك متصفح الإنترنت المدمج في ذلك أن هذا هو جهاز كمبيوتر متكامل 616 00:28:59,650 --> 00:29:01,240 من داخل الكمبيوتر. 617 00:29:01,240 --> 00:29:04,170 >> ولكن انا ذاهب الى فوق هذا أقصى اليسار أيقونة الأبيض هنا، 618 00:29:04,170 --> 00:29:05,890 الذي هو رمز للGedit. 619 00:29:05,890 --> 00:29:09,650 وانها سوف تفتح نافذة الذي يحتوي على ثلاث لوحات إليها، 620 00:29:09,650 --> 00:29:12,590 واحدة الأيسر، ورأس واحد، واحد السفلي. 621 00:29:12,590 --> 00:29:16,071 >> الآن حان في هذا رأس واحد الصحيح الذي انا ذاهب فعلا لكتابة بعض التعليمات البرمجية. 622 00:29:16,071 --> 00:29:16,820 لذلك دعونا نفعل ذلك،. 623 00:29:16,820 --> 00:29:19,040 انا ذاهب للذهاب إلى ملف، حفظ. 624 00:29:19,040 --> 00:29:22,100 وأنت لا قد شهدت أي وقت مضى هذه النافذة معين من قبل. 625 00:29:22,100 --> 00:29:23,620 ولكن هذا هو مثل نظام التشغيل ماك أو ويندوز. 626 00:29:23,620 --> 00:29:25,490 انها مجرد نافذة مع كل من المجلدات 627 00:29:25,490 --> 00:29:27,290 أن لدي داخل هذا الكمبيوتر. 628 00:29:27,290 --> 00:29:30,320 >> وانا ذاهب لإنقاذ الملف كملف hello.c. 629 00:29:30,320 --> 00:29:32,690 وانا ذاهب للذهاب قدما وانقر فوق حفظ. 630 00:29:32,690 --> 00:29:36,364 وتلاحظ الآن لدي التبويب في أعلى اليسار يسمى hello.c. 631 00:29:36,364 --> 00:29:38,280 حتى ربما جميلة مألوفة حتى لو كنت لم 632 00:29:38,280 --> 00:29:40,240 يستخدم هذا البرنامج بالذات من قبل. 633 00:29:40,240 --> 00:29:44,890 >> والآن انا ذاهب الى اكتب في تلك تسلسل خفي إلى حد ما من الأوامر 634 00:29:44,890 --> 00:29:46,360 الذي رأيناه قبل لحظة. 635 00:29:46,360 --> 00:29:49,330 تشمل معيار I / O.h. 636 00:29:49,330 --> 00:29:50,600 أكثر على ذلك قريبا. 637 00:29:50,600 --> 00:29:55,670 الفراغ الرئيسي المترجم، مجعد مفتوح هدفين، أغلقت متعرج. 638 00:29:55,670 --> 00:30:01,570 ثم هناك داخل أعتقد أنه حيث كان لدينا "مرحبا العالم" منقوطة. 639 00:30:01,570 --> 00:30:03,100 وحفظ الآن. 640 00:30:03,100 --> 00:30:08,780 >> لذلك هذا هو برنامج مكتوب بلغة C، مكتوبة، لذلك، في التعليمات البرمجية المصدر. 641 00:30:08,780 --> 00:30:10,720 ولكن لا يمكنني فقط تشغيل هذا البرنامج. 642 00:30:10,720 --> 00:30:13,390 النوع الأول من تريد مضاعفة انقر على أيقونة في مكان ما، 643 00:30:13,390 --> 00:30:16,390 ولكن لا يوجد رمز البعض من ملف التعليمات البرمجية المصدر. 644 00:30:16,390 --> 00:30:20,359 ماذا، مرة أخرى، هو عملية الآن أن أحتاج لتشغيل هذا الملف من خلال؟ 645 00:30:20,359 --> 00:30:21,150 الجمهور: مترجم. 646 00:30:21,150 --> 00:30:22,399 J. DAVID مالان: لذا مترجم. 647 00:30:22,399 --> 00:30:24,890 حتى في أجهزة الكمبيوتر المختلفة التي القيام بذلك بطرق مختلفة. 648 00:30:24,890 --> 00:30:27,480 ولكن ما قمنا به هنا في الأجهزة CS50 هذا 649 00:30:27,480 --> 00:30:31,260 ممثل كيف يمكن القيام بذلك على العديد من أنظمة مختلفة، 650 00:30:31,260 --> 00:30:34,036 وأنا ببساطة الذهاب الى تشغيل أمر دعا جعل. 651 00:30:34,036 --> 00:30:35,660 وجعل حرفيا سيفعل ذلك. 652 00:30:35,660 --> 00:30:36,640 تجعلني برنامج. 653 00:30:36,640 --> 00:30:39,060 >> لذا تأكد يتم الانتقال إلى تشغيل مترجم بالنسبة لي. 654 00:30:39,060 --> 00:30:42,160 واسم البرنامج اريد ان يكون هو مرحبا. 655 00:30:42,160 --> 00:30:43,510 الآن هو جعل البرنامج. 656 00:30:43,510 --> 00:30:47,170 وجعل ذكي بما فيه الكفاية ل ندرك أن إذا قلت جعل مرحبا، 657 00:30:47,170 --> 00:30:50,980 انها سوف ننظر تلقائيا لملف يسمى hello.c 658 00:30:50,980 --> 00:30:53,420 لمجرد أن هذا هو الطريقة التي تكوينه. 659 00:30:53,420 --> 00:31:00,300 >> حتى عندما كنت هنا الآن هاهنا، وهذا خط خفي مجنون فقط حصلت على تنفيذها. 660 00:31:00,300 --> 00:31:02,720 والثقة لي، قبل منذ فترة طويلة، خلال أيام فقط، 661 00:31:02,720 --> 00:31:05,590 عليك فهم ما كل تلك الوسائل هراء. 662 00:31:05,590 --> 00:31:11,150 لكنه الآن، ونعرف تماما أن جعل تنفيذ مسبب للمترجم. 663 00:31:11,150 --> 00:31:13,290 وبعبارة أخرى، أنها وجدت مترجم على جهاز الكمبيوتر الخاص بي 664 00:31:13,290 --> 00:31:14,820 هذا قبل تثبيت على الأجهزة CS50 665 00:31:14,820 --> 00:31:16,560 أننا سوف تسليم لكم في مشكلة تعيين 1. 666 00:31:16,560 --> 00:31:20,990 وبعد ذلك أخذ hello.c و المدخلات، وأنتجت على ما يبدو 667 00:31:20,990 --> 00:31:23,040 0S و1S كإخراج. 668 00:31:23,040 --> 00:31:29,410 >> وافتراضيا ما يفعله هو أنه يوفر تلك 0S و1S في ملف يسمى مرحبا. 669 00:31:29,410 --> 00:31:33,180 وعلى الرغم بناء الجملة هذا قد جدا تكون جديدة بالنسبة لك، وذلك ببساطة بقوله نقطة 670 00:31:33,180 --> 00:31:37,110 خفض مرحبا ستكون ل الوسائل التي كنت تشغيل هذا البرنامج. 671 00:31:37,110 --> 00:31:40,360 >> الآن وعلى الأقل زوجين أسابيع، وتقريبا جميع البرامج 672 00:31:40,360 --> 00:31:44,230 نكتب ستكون في نوافذ النص بالأسود والأبيض. 673 00:31:44,230 --> 00:31:47,006 لا الفئران، لا النقر، ولا نوافذ ولا الأيقونات. 674 00:31:47,006 --> 00:31:49,630 نحن ذاهبون الى يبقيه بسيط والتركيز على الأفكار الأساسية 675 00:31:49,630 --> 00:31:52,490 في البداية قبل أن نصل إلى شيء مستوى أعلى، على سبيل المثال، 676 00:31:52,490 --> 00:31:56,410 مثل الخروج اللعبة التي تحدثنا حول المحاضرة الأولى في الأسبوع الماضي. 677 00:31:56,410 --> 00:32:00,820 >> حتى عندما كنت هاهنا هنا، انها ما يعادلها في نص البيئة فقط 678 00:32:00,820 --> 00:32:03,272 لمضاعفة النقر على أيقونة دعا مرحبا. 679 00:32:03,272 --> 00:32:05,480 ماذا تتوقع الإرادة يحدث عندما كنت هاهنا بعد ذلك؟ 680 00:32:05,480 --> 00:32:07,120 >> الجمهور: انها سوف طباعة "مرحبا العالم". 681 00:32:07,120 --> 00:32:10,000 >> J. DAVID مالان: نأمل فإنه سيتم طباعة "مرحبا العالم". 682 00:32:10,000 --> 00:32:11,370 وبالفعل فعلت. 683 00:32:11,370 --> 00:32:13,690 الآن هناك كان بعض تركيب خفي هنا. 684 00:32:13,690 --> 00:32:15,950 دعونا الترجيع للتو لحظة ونرى اذا كنا 685 00:32:15,950 --> 00:32:19,530 لا يمكن بدء استنتاج فقط عن طريق ترقيع، في محاولة والفشل، 686 00:32:19,530 --> 00:32:21,130 على ما يجري هنا. 687 00:32:21,130 --> 00:32:23,609 ماذا لو تخلص من مائل ن؟ 688 00:32:23,609 --> 00:32:25,650 الآن بعض منكم الذين قد ربما مبرمجة قبل 689 00:32:25,650 --> 00:32:27,054 تعرف على الفور ما يعنيه ذلك. 690 00:32:27,054 --> 00:32:29,220 لكن بالنسبة لأولئك منكم الذين قد أبدا مبرمجة من قبل، 691 00:32:29,220 --> 00:32:34,052 على الأقل اعتقد لنفسك ما يجري لتغيير عندما كنت إعادة تشغيل هذا البرنامج؟ 692 00:32:34,052 --> 00:32:37,010 لذلك أنا ذاهب الى العودة الى بلدي يذكر نافذة الأبيض والأسود، والتي 693 00:32:37,010 --> 00:32:39,290 هو الإطار الذي أستطيع أن تجميع هذه. 694 00:32:39,290 --> 00:32:41,130 انا ذاهب الى إعادة ترجمة مرحبا. 695 00:32:41,130 --> 00:32:43,520 نحن ذاهبون لرؤية نفسه تسلسل خفي من الأوامر. 696 00:32:43,520 --> 00:32:45,719 وانا ذاهب الى القيام مائل دوت مرحبا. 697 00:32:45,719 --> 00:32:48,260 والآن شخص ما، لو تفضلتم، من الذي لم مبرمجة من قبل، 698 00:32:48,260 --> 00:32:49,770 ما قد يكون مختلفا هذه المرة؟ 699 00:32:49,770 --> 00:32:50,020 نعم. 700 00:32:50,020 --> 00:32:51,840 >> الجمهور: انها لن تتوقف الطباعة "مرحبا العالم". 701 00:32:51,840 --> 00:32:52,660 >> J. DAVID مالان: انها تسير علي: آسف؟ 702 00:32:52,660 --> 00:32:54,210 >> الجمهور: لن تتوقف طباعته؟ 703 00:32:54,210 --> 00:32:55,810 >> J. DAVID مالان: لن وقف طباعة "مرحبا العالم". 704 00:32:55,810 --> 00:32:56,560 لذلك ليست فكرة سيئة. 705 00:32:56,560 --> 00:32:58,633 أفكار أخرى؟ 706 00:32:58,633 --> 00:32:59,132 نعم. 707 00:32:59,132 --> 00:33:00,060 >> الجمهور: رسالة خطأ؟ 708 00:33:00,060 --> 00:33:01,750 >> J. DAVID مالان: خطأ رسالة، حسنا، يمكن أن يكون. 709 00:33:01,750 --> 00:33:02,250 ماذا؟ 710 00:33:02,250 --> 00:33:05,479 الجمهور: قد طباعة قوس مع منقوطة كذلك؟ 711 00:33:05,479 --> 00:33:08,270 J. DAVID مالان: أمكن طباعة قوس مع الفاصلة المنقوطة أيضا. 712 00:33:08,270 --> 00:33:11,950 لذلك ربما هذا هو مائل ثم بعض نوع من terminous هذا هو المهم. 713 00:33:11,950 --> 00:33:14,860 أي أفكار أخرى؟ 714 00:33:14,860 --> 00:33:16,412 >> لذلك كل الأفكار الجيدة. 715 00:33:16,412 --> 00:33:18,370 وفي الواقع، انه سيكون لتكون رسالة خطأ. 716 00:33:18,370 --> 00:33:20,400 وهذا ربما على الأرجح ليكون الجواب بشكل عام 717 00:33:20,400 --> 00:33:22,420 خلال الأسابيع القليلة القادمة ونحن نتعلم هنا إلى رمز. 718 00:33:22,420 --> 00:33:27,680 >> ولكن لنتذكر الآن أن أجهزة الكمبيوتر فقط تفعل ما كنت أقول لهم القيام به. 719 00:33:27,680 --> 00:33:30,400 مثل الكثير من الفول السوداني سخيف الزبدة وجيلي سبيل المثال. 720 00:33:30,400 --> 00:33:33,860 كان من المفترض فقط لدينا أجهزة الكمبيوتر الإنسان أن تفعل ما طلب منهم القيام به. 721 00:33:33,860 --> 00:33:36,250 حتى في هذه الحالة، إذا كنت لا تخبر الكمبيوتر 722 00:33:36,250 --> 00:33:41,190 لنقل أن المؤشر الوامض إلى السطر التالي، انها لن تفعل ذلك. 723 00:33:41,190 --> 00:33:45,390 لذلك عند تشغيل هذا البرنامج الآن، لاحظ الفرق. 724 00:33:45,390 --> 00:33:46,900 >> يبدو وكأنه علة. 725 00:33:46,900 --> 00:33:49,190 انها علة الجمالي، ربما. 726 00:33:49,190 --> 00:33:53,310 ولكن ما هو مختلف عن هذا الناتج مقابل واحد آخر من الواضح؟ 727 00:33:53,310 --> 00:33:53,810 نعم. 728 00:33:53,810 --> 00:33:54,920 >> الجمهور: ولكنها لم تفعل سطر جديد. 729 00:33:54,920 --> 00:33:56,586 >> J. DAVID مالان: ولكنها لم تفعل سطر جديد. 730 00:33:56,586 --> 00:33:58,740 الآن أولئك منكم الذين لديهم صفحات الويب التي ربما 731 00:33:58,740 --> 00:34:01,910 من قبل، هل يمكن أن نعرف من BR علامة أو علامة الفقرة، 732 00:34:01,910 --> 00:34:03,120 مشابهة جدا في الروح. 733 00:34:03,120 --> 00:34:06,680 سوف متصفح ويب تجاهل لك حتى كنت اقول بالضبط ما يجب القيام به. 734 00:34:06,680 --> 00:34:10,020 وبالمثل، هي لغة مثل C فقط سوف تفعل ما أقول أن تفعله. 735 00:34:10,020 --> 00:34:12,730 >> ذلك السبب الذي كل هذه الأمثلة، 736 00:34:12,730 --> 00:34:15,350 حتى الآن، لدينا نوع من كان هذا عرضا مائل 737 00:34:15,350 --> 00:34:18,560 في هناك، وهذا هو وسيلة التي يمكن التعبير عن نفسك 738 00:34:18,560 --> 00:34:21,380 كحرف الخط الجديد، إذا جاز التعبير. 739 00:34:21,380 --> 00:34:26,219 ويمكن أن نقدر لكم نوع من، ربما، أن هذا سيبدو نوع من الغباء 740 00:34:26,219 --> 00:34:27,070 إذا أي شيء آخر. 741 00:34:27,070 --> 00:34:29,150 إذا أردت سطر جديد فقط ضرب أدخل ثم نوع 742 00:34:29,150 --> 00:34:32,219 من ذبح رمز من هذا القبيل يجب عدم فرك كنت حقا بالطريقة الصحيحة. 743 00:34:32,219 --> 00:34:33,830 وحتى لو كنت لا تهتم حقا في هذه المرحلة، 744 00:34:33,830 --> 00:34:35,830 سوف ندرك أن هذه ليست خاصة 745 00:34:35,830 --> 00:34:37,870 قطعة جيدة تبحث من التعليمات البرمجية. 746 00:34:37,870 --> 00:34:39,969 >> وهكذا ما في العالم قبل سنوات قرر هو 747 00:34:39,969 --> 00:34:43,420 أنه عندما تريد وضع المؤشر إلى سطر جديد صراحة، 748 00:34:43,420 --> 00:34:46,332 يجب القول صراحة خط جديد، مائل ن. 749 00:34:46,332 --> 00:34:48,040 وهناك بعض الدول الاخرى حرف من هذا القبيل. 750 00:34:48,040 --> 00:34:50,719 لكنه الآن سنقوم فقط التركيز على مائل ن. 751 00:34:50,719 --> 00:34:53,790 >> الآن دعونا جعل البرنامج قليلا أكثر إثارة للاهتمام. 752 00:34:53,790 --> 00:34:59,200 انا ذاهب الى المضي قدما و هذه المرة فتح ملف جديد. 753 00:34:59,200 --> 00:35:02,520 انا ذاهب لحفظ هذا كما مرحبا-1.C. 754 00:35:02,520 --> 00:35:05,540 وفقط لركلات، أنا ذاهب ل اذهب وضعها في مجلد Dropbox بلدي. 755 00:35:05,540 --> 00:35:09,030 >> كما سترى في CS50 وثائق الجهاز، 756 00:35:09,030 --> 00:35:11,210 في وقت لاحق هذا الاسبوع لمشكلة مجموعة 1، سنقوم تشجيع 757 00:35:11,210 --> 00:35:13,230 لك استخدام دروببوإكس أو بعض الخدمات ما يعادلها، 758 00:35:13,230 --> 00:35:15,430 لأن بعد ذلك كل من المدونة الخاصة بك سوف يكون احتياطيا تلقائيا. 759 00:35:15,430 --> 00:35:17,830 وولهذا السبب لدي ذهب إلى هذا المجلد هنا. 760 00:35:17,830 --> 00:35:20,230 >> والآن انا ذاهب الى إرسال بريد برنامج مختلف قليلا. 761 00:35:20,230 --> 00:35:24,740 تشمل معيار I / O.h، الفراغ الرئيسي كثافة العمليات. 762 00:35:24,740 --> 00:35:29,660 ثم هنا printf، مرحبا العالم، وهو بالضبط نفس قبل. 763 00:35:29,660 --> 00:35:32,450 >> ولكن الآن أريد أن طباعة شيء هذا هو مختلفة قليلا. 764 00:35:32,450 --> 00:35:34,800 أريد أن طباعة، يقول: "مرحبا، ديفيد." 765 00:35:34,800 --> 00:35:37,590 كل الحق، لذلك من الواضح، نأمل ذلك ينبغي 766 00:35:37,590 --> 00:35:40,360 يكون عليه الحال لو أن إعادة ترجمة هذا البرنامج، أعد ذلك، 767 00:35:40,360 --> 00:35:41,840 انها سوف يقول "مرحبا، ديفيد." 768 00:35:41,840 --> 00:35:45,160 >> ولكن ماذا لو أريد أن أعرض هذا النوع من متغير، 769 00:35:45,160 --> 00:35:49,240 فكرة وجود الحاوية التي يجري لتخزين D واحد في الخامس ط د ورمز أنه ليس من الصعب 770 00:35:49,240 --> 00:35:50,600 في برنامجي. 771 00:35:50,600 --> 00:35:53,430 حسنا ماذا لو أبدأ تفعل شيئا مثل هذا؟ 772 00:35:53,430 --> 00:35:57,120 >> سلسلة S، لذلك هذا هو متغير. 773 00:35:57,120 --> 00:36:00,250 إذا كنت ترغب في سلسلة، الملقب كلمة أو عبارة. 774 00:36:00,250 --> 00:36:03,485 سلسلة من الأحرف هو ما نحن في البرمجة استدعاء سلسلة. 775 00:36:03,485 --> 00:36:06,610 نحن ذاهبون لمجرد الدعوة بشكل عام ذلك ليالي، لأنه اسم بسيط لطيف. 776 00:36:06,610 --> 00:36:08,010 ولكن يمكن أن نسميها أي شيء. 777 00:36:08,010 --> 00:36:12,920 >> انا ذاهب الى القول متساوين سلسلة S قوسي الإقتباس، "ديفيد" منقوطة. 778 00:36:12,920 --> 00:36:18,330 والآن أريد أن إدراج D-A-V-I-D إلى ما أنا الطباعة. 779 00:36:18,330 --> 00:36:23,720 وقبل شاهدنا دعابة على الشاشة من بعض بناء جملة خاص 780 00:36:23,720 --> 00:36:26,050 التي سمحت لنا بديل في القيمة. 781 00:36:26,050 --> 00:36:29,250 ما هو خاص رمز قبل بضعة الشرائح؟ 782 00:36:29,250 --> 00:36:30,040 >> حتى في المئة. 783 00:36:30,040 --> 00:36:33,830 في ذلك الوقت كان في المئة د لرقم عشري. 784 00:36:33,830 --> 00:36:35,850 لا يبدو حقا ذات الصلة هنا. 785 00:36:35,850 --> 00:36:38,650 تبين هناك و رمز النسبة المئوية آخر، 786 00:36:38,650 --> 00:36:42,810 وهي في المئة، والتي تقف لنائب لسلسلة. 787 00:36:42,810 --> 00:36:49,350 >> وحتى الآن، ببساطة شديدة، أنا سيذهب جعل مرحبا-1، 788 00:36:49,350 --> 00:36:54,210 لأن يسمى هذا الملف مرحبا-1.C، وهاهنا. 789 00:36:54,210 --> 00:36:56,230 وثمل بي الأمر. 790 00:36:56,230 --> 00:36:57,394 ما الذي يحدث؟ 791 00:36:57,394 --> 00:37:00,560 حسنا، هنا حيث لدينا للبدء في نقدر أننا في هذا الأمر 792 00:37:00,560 --> 00:37:02,810 البيئة الخط، وهذا النص البيئة فقط. 793 00:37:02,810 --> 00:37:06,114 ليس هناك النقر على الأيقونات مثل المجلدات الآن. 794 00:37:06,114 --> 00:37:07,280 والتفكير مرة أخرى قبل لحظة. 795 00:37:07,280 --> 00:37:10,740 في ما فعله مجلد أقول كنت إنقاذ قانون بلدي؟ 796 00:37:10,740 --> 00:37:11,657 لذلك المجلد دروببوإكس. 797 00:37:11,657 --> 00:37:12,989 كان يمكن أن يسمى أي شيء. 798 00:37:12,989 --> 00:37:14,530 ولكن يحدث أن يسمى دروببوإكس. 799 00:37:14,530 --> 00:37:18,380 لذلك أنا بطريقة ما تحتاج إلى مضاعفة الضغط على هذا المجلد دروببوإكس من أجل الحصول على 800 00:37:18,380 --> 00:37:21,657 الى ذلك والحصول على بلدي دعا كود مرحبا-1.C. 801 00:37:21,657 --> 00:37:24,490 في الواقع، اسمحوا لي المضي قدما وتقليل هذه النافذة لمجرد لحظة. 802 00:37:24,490 --> 00:37:27,560 تماما مثل ويندوز وماك OS، هناك المجلدات في لينكس. 803 00:37:27,560 --> 00:37:29,410 هناك المجلدات في اجهزة CS50. 804 00:37:29,410 --> 00:37:32,380 انها مجرد الآن نحن مقيدة أنفسنا لهذه البيئة النص. 805 00:37:32,380 --> 00:37:34,700 >> ولكن إذا كنت انقر نقرا مزدوجا فوق على دروببوإكس، لاحظ هناك 806 00:37:34,700 --> 00:37:37,210 هو الملف الذي أريد ترجمة. 807 00:37:37,210 --> 00:37:41,430 ولكن انا بحاجة الى هذا بالأبيض والأسود نافذة الصالة، إذا جاز التعبير. 808 00:37:41,430 --> 00:37:45,750 ولكني في حاجة، بالتالي، إلى التحرك في هذا المجلد أو الدليل. 809 00:37:45,750 --> 00:37:48,290 حتى غامضة قليلا، ولكن عليك أن تعتاد على هذا أيضا. 810 00:37:48,290 --> 00:37:50,430 >> في عالم لينكس، مرة أخرى التي هي التشغيل 811 00:37:50,430 --> 00:37:54,860 نحن تشغيل النظام داخل CS50 الأجهزة، وهناك أمر يسمى CD. 812 00:37:54,860 --> 00:37:58,310 وهو ما يعني أنني يمكن أن تفعل CD، الفضاء، دروببوإكس. 813 00:37:58,310 --> 00:37:59,900 CD، دليل التغيير. 814 00:37:59,900 --> 00:38:00,400 الحق. 815 00:38:00,400 --> 00:38:02,890 مرة في اليوم عندما كان الناس اختراع أجهزة الكمبيوتر وتشغيل 816 00:38:02,890 --> 00:38:05,806 أنظمة من هذا القبيل، أرادوا اكتب أقل عدد ممكن ضربات المفاتيح. 817 00:38:05,806 --> 00:38:08,760 ولذلك فإن أسهل طريقة للقول كان تغيير الدليل CD. 818 00:38:08,760 --> 00:38:13,910 >> حتى إذا أنا ضربت CD، الفضاء دروببوإكس، تلاحظ ما الذي تغير هنا. 819 00:38:13,910 --> 00:38:16,480 داخل قوسين الجهاز هو نوع 820 00:38:16,480 --> 00:38:19,360 من humoring لي و تذكير لي أين أنا. 821 00:38:19,360 --> 00:38:21,480 لذلك المجلد المفتوح هو دروببوإكس. 822 00:38:21,480 --> 00:38:24,950 إذا أنا الآن اكتب ليرة سورية ل القائمة، مرة أخرى مختصرة و 823 00:38:24,950 --> 00:38:27,540 لأنه لم يكن الناس يريدون اكتب مرة في اليوم ليتر-I-S-T. 824 00:38:27,540 --> 00:38:29,300 حتى أنها بدلا من ذلك جعلها LS. 825 00:38:29,300 --> 00:38:30,110 >> دخول. 826 00:38:30,110 --> 00:38:35,740 لاحظ أرى أمرين، مرحبا-1.C، ثم هذا شيء خفي، 1M المصدر. 827 00:38:35,740 --> 00:38:38,310 هذا مجرد طريقي من القول الشفرة المصدرية لمدة أسبوع و1 الاثنين. 828 00:38:38,310 --> 00:38:42,020 هذا هو المجلد الأول تحميلها من موقع CS50 أن أدليت به في وقت سابق من اليوم 829 00:38:42,020 --> 00:38:43,990 وضعت للتو عليه في الأجهزة مقدما. 830 00:38:43,990 --> 00:38:47,550 >> لكنه الآن الشيء الوحيد الذي نهتم به هو جعل هذا البرنامج. 831 00:38:47,550 --> 00:38:50,440 حتى عندما كنت اكتب جعل مرحبا-1، أدخل. 832 00:38:50,440 --> 00:38:51,320 اللعنة. 833 00:38:51,320 --> 00:38:53,060 ذهب شيئا خاطئا. 834 00:38:53,060 --> 00:38:54,580 لذلك دعونا ندف هذا عدا. 835 00:38:54,580 --> 00:38:58,489 وللأسف هذا هو المكان الأشياء الحصول مرهقة قليلا في البداية، 836 00:38:58,489 --> 00:39:00,280 على الأقل إذا كنت قد أبدا مبرمجة من قبل. 837 00:39:00,280 --> 00:39:00,980 >> إلهي. 838 00:39:00,980 --> 00:39:04,990 كتبت في برنامج اثنين من خط و لدي أربعة أسطر من الأخطاء. 839 00:39:04,990 --> 00:39:07,180 فما الذي يحدث هنا. 840 00:39:07,180 --> 00:39:11,370 أولا وقبل كل شيء التمرير دائما العودة صعودا والعثور على رسالة الخطأ الأولى، 841 00:39:11,370 --> 00:39:15,730 لأن المجمعين في كثير من الأحيان فقط يحصل الخلط من قبل ما لكم، وأنا أفعل. 842 00:39:15,730 --> 00:39:17,000 المجمعين هي غبية جدا. 843 00:39:17,000 --> 00:39:18,360 وأنها سوف تفعل ما فقط كنت أقول لهم القيام به. 844 00:39:18,360 --> 00:39:21,484 وإذا كنت يربكهم، وانهم فقط الذهاب الى نوع من نفض أيديهم 845 00:39:21,484 --> 00:39:25,010 وربما رمي المزيد من رسائل الخطأ من هي ذات الصلة الواقع. 846 00:39:25,010 --> 00:39:26,380 >> لذلك دعونا ننظر في البداية. 847 00:39:26,380 --> 00:39:27,540 سوبر خفي في البداية. 848 00:39:27,540 --> 00:39:31,050 لكن إشعار، وهنا اسم الملف الذي أنا ثمل على ما يبدو. 849 00:39:31,050 --> 00:39:36,570 5 القولون والقولون 5 يعني فقط على السطر 5 عند الحرف الخامس. 850 00:39:36,570 --> 00:39:39,760 لذلك الطابور الخامس من الشخصيات، اذا صح، خطأ. 851 00:39:39,760 --> 00:39:41,870 استخدام سلسلة معرف غير معلنة. 852 00:39:41,870 --> 00:39:43,120 هل تقصد ن القياسية؟ 853 00:39:43,120 --> 00:39:44,850 >> لا، أنا يعني السلسلة. 854 00:39:44,850 --> 00:39:47,640 ثم انها نوع من النسخ واللصق 855 00:39:47,640 --> 00:39:50,700 ما كتبته لرسم حقا بلدي الانتباه إلى حيث أنا ثمل. 856 00:39:50,700 --> 00:39:54,260 ذلك لسبب C، أو على الأقل المترجم 857 00:39:54,260 --> 00:39:56,470 لا يفهم سلسلة كلمة. 858 00:39:56,470 --> 00:39:57,890 وذلك لأن قدمنا ​​عنه. 859 00:39:57,890 --> 00:40:01,440 لذلك لا وجود سلسلة في C. CS50 ما يفعل، 860 00:40:01,440 --> 00:40:03,380 في الأسابيع القليلة الأولى فقط الطبقة، 861 00:40:03,380 --> 00:40:05,700 ونحن نقدم بعض التدريب عجلات، إذا جاز التعبير. 862 00:40:05,700 --> 00:40:11,160 ونضع هذه العجلات تدريب داخل ملف خاص يسمى CS50.h. 863 00:40:11,160 --> 00:40:14,970 >> لذلك هذا هو ثاني اثنين من ملف الأسماء التي تنتهي على ما يبدو في ساعة نقطة. 864 00:40:14,970 --> 00:40:16,300 دعونا الترجيع. 865 00:40:16,300 --> 00:40:19,360 Printf هو بيان أو وظيفة يبدو أن يطبع شيء 866 00:40:19,360 --> 00:40:20,580 إلى الشاشة. 867 00:40:20,580 --> 00:40:23,470 ولكنك لم تراني تنفيذ printf، والحق. 868 00:40:23,470 --> 00:40:26,360 سنوات شخص قبل تنفيذ printf. 869 00:40:26,360 --> 00:40:30,420 في ملف ما هل هو الرهان أو أنها وضعت تنفيذ 870 00:40:30,420 --> 00:40:34,270 لprintf، رمز printf؟ 871 00:40:34,270 --> 00:40:36,860 >> في ملف يسمى معيار I / O.h. 872 00:40:36,860 --> 00:40:39,930 في الواقع، هو على الأرجح في ملفين، ومعيار I / O.h، 873 00:40:39,930 --> 00:40:42,650 التي تقف على رأس الملف، ومعيار I / O.c، 874 00:40:42,650 --> 00:40:44,060 التي تقف على C شفرة المصدر. 875 00:40:44,060 --> 00:40:48,220 حتى انه أو انها قبل بضع سنوات ساقط التعليمات البرمجية التي كتبوا في هذا الملف 876 00:40:48,220 --> 00:40:51,240 حتى أن الناس مثلنا بعد سنوات يمكن أن تشمل ذلك، 877 00:40:51,240 --> 00:40:53,040 إذا جاز التعبير، في البرامج الخاصة بنا. 878 00:40:53,040 --> 00:40:56,320 >> وبالفعل، هذا ما الجنيه تلتها كلمة تشمل يفعل. 879 00:40:56,320 --> 00:41:00,250 يبدو على محرك الأقراص الثابت المحلي، تجد ملف يسمى معيار I / O.h، 880 00:41:00,250 --> 00:41:03,840 ثم نسخ بفعالية و يلصق عليه داخل ملف بلدي. 881 00:41:03,840 --> 00:41:07,210 وحتى الآن يعرف برنامجي كيفية طباعة على الشاشة. 882 00:41:07,210 --> 00:41:11,120 >> ذلك أن المنطق، حيث يتم تعريف سلسلة؟ 883 00:41:11,120 --> 00:41:12,260 >> الجمهور: CS50.h. 884 00:41:12,260 --> 00:41:13,290 >> J. DAVID مالان: CS50.h. 885 00:41:13,290 --> 00:41:15,540 وبالفعل، هذا ما نحن، الموظفين الأساسيين، قد فعلت. 886 00:41:15,540 --> 00:41:19,590 لقد اخترع بعض أنواع البيانات، إذا جاز التعبير، مثل سلسلة، 887 00:41:19,590 --> 00:41:22,370 بالإضافة إلى تلك التي الحصول عليها مجانا، مثل كثافة العمليات. 888 00:41:22,370 --> 00:41:26,010 وسنرى آخرين مثل شار لحرف وعدد قليل من أكثر. 889 00:41:26,010 --> 00:41:30,670 داخل CS50.h على ما يبدو هو على الأقل بعض ذكر من السلسلة. 890 00:41:30,670 --> 00:41:34,980 >> وحتى الآن اسمحوا لي المضي قدما وجعل أعد تشغيل مرحبا-1. 891 00:41:34,980 --> 00:41:37,100 سوف تكبير مرة أخرى وعبور أصابعي. 892 00:41:37,100 --> 00:41:41,370 الآن بعد أن جعلت واحدة تغيير I ثابتة معظم الأشياء. 893 00:41:41,370 --> 00:41:42,100 لكن اللعنة. 894 00:41:42,100 --> 00:41:44,290 المزيد من النسب المئوية من الحجج البيانات. 895 00:41:44,290 --> 00:41:45,980 ماذا فعلت خطأ هذه المرة؟ 896 00:41:45,980 --> 00:41:47,420 >> حتى انها لا تزال خفي جدا. 897 00:41:47,420 --> 00:41:51,560 ولكن هذا الخطأ هو في خط 7 و 21 شخصية. 898 00:41:51,560 --> 00:41:53,880 لذلك دعونا نذهب ننظر هنا. 899 00:41:53,880 --> 00:41:55,350 انها خفية قليلا. 900 00:41:55,350 --> 00:41:59,167 ولكن إذا كنت تفكر في ما الأفكار الأساسية هنا، 901 00:41:59,167 --> 00:42:00,500 ربما يمكننا أن ندف هذا عدا. 902 00:42:00,500 --> 00:42:02,300 >> حتى printf هو اسم الدالة. 903 00:42:02,300 --> 00:42:04,960 قوسين، حتى الآن، هو تماما مثل ما وضعنا حول 904 00:42:04,960 --> 00:42:07,005 الاشياء نقوم بتمرير كمدخلات في وظيفة. 905 00:42:07,005 --> 00:42:08,921 كل الحق، وهو فقط اتفاقية الإنسان التعسفي. 906 00:42:08,921 --> 00:42:09,919 استخدام الأقواس. 907 00:42:09,919 --> 00:42:12,460 داخل هذه الأقواس لقد تم وضع علامات اقتباس مزدوجة، 908 00:42:12,460 --> 00:42:14,810 ثم سلسلة مثل "مرحبا العالم". 909 00:42:14,810 --> 00:42:18,160 >> ولكن في هذا المثال السابق جدا لم ننظر لفترة وجيزة مع خدش. 910 00:42:18,160 --> 00:42:22,590 وكان لدينا في المئة في د، ماذا كان داخل تلك قوسين 911 00:42:22,590 --> 00:42:23,730 أن ناديت لفظيا؟ 912 00:42:23,730 --> 00:42:24,230 نعم. 913 00:42:24,230 --> 00:42:28,166 >> الجمهور: لذلك ما كنت تتناولين [غير مسموع] من خلال [غير مسموع] 914 00:42:28,166 --> 00:42:30,200 ما هذه (غير مسموع)؟ 915 00:42:30,200 --> 00:42:31,200 J. DAVID مالان: بالضبط. 916 00:42:31,200 --> 00:42:32,700 لذلك كان علينا في المئة د. 917 00:42:32,700 --> 00:42:36,620 ولكن بعد ذلك كان علينا قريبا الاقتباس، فاصلة، العداد. 918 00:42:36,620 --> 00:42:37,120 الحق. 919 00:42:37,120 --> 00:42:40,680 حددنا ما نريد للقيام باعتباره نائبا. 920 00:42:40,680 --> 00:42:44,621 ذلك ما أنا ذاهب الى القيام به هنا هو فاصلة، ماذا تريد مني أن أضع؟ 921 00:42:44,621 --> 00:42:45,120 الجمهور: S. 922 00:42:45,120 --> 00:42:46,828 J. DAVID مالان: S، لأن ق في هذه الحالة 923 00:42:46,828 --> 00:42:48,700 هو اسم حاوية التخزين. 924 00:42:48,700 --> 00:42:50,180 انها اسم ذلك عاء زجاجي. 925 00:42:50,180 --> 00:42:53,610 في حين قبل كان العداد في أن المثال خدش بسيط نظرنا. 926 00:42:53,610 --> 00:42:56,630 حتى الآن بعد أن صنع هدفين التغييرات، اسمحوا لي تكبير 927 00:42:56,630 --> 00:42:59,800 ثم حاول مرة أخرى ل تجميع هذا البرنامج. 928 00:42:59,800 --> 00:43:01,596 >> الآن أرى أن خط خفي. 929 00:43:01,596 --> 00:43:03,470 ولكن هذا الواقع اسم الجامع. 930 00:43:03,470 --> 00:43:04,886 رنة هو اسم المترجم. 931 00:43:04,886 --> 00:43:07,100 جعل هو مجرد إنقاذ لي الصداع من أي وقت مضى 932 00:43:07,100 --> 00:43:09,830 كتابة هذا الأمر منذ فترة طويلة مجنون بها. 933 00:43:09,830 --> 00:43:14,900 وحتى الآن لو لم خفض نقطة مرحبا-1، أنا يجب أن نرى "مرحبا، ديفيد." 934 00:43:14,900 --> 00:43:16,450 >> مخيب جدا، رغم ذلك، أليس كذلك؟ 935 00:43:16,450 --> 00:43:18,158 يمكننا القيام به هذا أكثر بكثير ببساطة 936 00:43:18,158 --> 00:43:20,940 دون الحديث عن المتغيرات وCS50.h وكل ذلك. 937 00:43:20,940 --> 00:43:23,080 لذلك دعونا تجعل من قليلا أكثر إثارة للاهتمام. 938 00:43:23,080 --> 00:43:31,010 >> بالإضافة إلى CS50.h، وجود أشياء مثل سلسلة 939 00:43:31,010 --> 00:43:34,550 أعلن والمكتبة CS50 لديها أيضا عدد قليل من الوظائف. 940 00:43:34,550 --> 00:43:38,520 منذ سنوات حتى مجرد مثل، كتب شخص printf ووضعها في مستوى I / O.h 941 00:43:38,520 --> 00:43:39,530 وبعض الملفات الأخرى. 942 00:43:39,530 --> 00:43:44,010 >> نحن الموظفين CS50، كتب وظيفة دعا GetChar، GetDouble، GetFloat، 943 00:43:44,010 --> 00:43:47,610 GetInt، GetLongLong، GetString، ونضع تلك داخل ملف 944 00:43:47,610 --> 00:43:49,890 دعا CS50.h وCS50.c. 945 00:43:49,890 --> 00:43:51,880 وضعنا لهم داخل من الأجهزة CS50. 946 00:43:51,880 --> 00:43:53,880 ويمكن للناس أيضا تحميلها على الانترنت إذا كانوا 947 00:43:53,880 --> 00:43:55,880 نريد ان نضع لهم على هم أجهزة الكمبيوتر الخاصة كذلك. 948 00:43:55,880 --> 00:44:00,880 وهو ما يعني أننا قد خلقت الوظائف التي تحصل على مدخلات من المستخدم. 949 00:44:00,880 --> 00:44:02,930 أنا لا أعرف ما كل هذه هي أنواع البيانات. 950 00:44:02,930 --> 00:44:06,490 GetInt هو نوع من واضحة، مثل الحصول على عدد صحيح بطريقة ما من المستخدم. 951 00:44:06,490 --> 00:44:09,980 وGetString هو على الارجح مثل الحصول على كلمة أو جملة من المستخدم. 952 00:44:09,980 --> 00:44:11,770 >> لذلك دعونا نركز على ذلك. 953 00:44:11,770 --> 00:44:14,710 وانا ذاهب للذهاب مرة أخرى في الأجهزة وانا ذاهب الى المضي قدما 954 00:44:14,710 --> 00:44:20,790 وحفظ هذا الملف ك، دعونا ندعو انها مرحبا-2.C كما بلدي النسخة الثانية. 955 00:44:20,790 --> 00:44:23,030 ودعونا جعل زوجين من التغييرات. 956 00:44:23,030 --> 00:44:25,800 >> هذه المرة بدلا من من الصعب الترميز ديفيد، التي 957 00:44:25,800 --> 00:44:29,120 يجعل متسقة بشكل لا يصدق لكن برنامج مخيب، 958 00:44:29,120 --> 00:44:32,640 ماذا لو كنت بدلا من ذلك القيام GetString؟ 959 00:44:32,640 --> 00:44:35,660 الآن نلاحظ GetString لديه قوس مفتوح، 960 00:44:35,660 --> 00:44:38,500 أقواس مغلقة، ل أنها لا تحتاج إلى أي إدخال. 961 00:44:38,500 --> 00:44:40,850 انها مجرد الذهاب الى الذهاب الحصول سلسلة من المستخدم. 962 00:44:40,850 --> 00:44:42,460 >> والآن كلمة عن جملة آخرين. 963 00:44:42,460 --> 00:44:45,439 الفاصلة المنقوطة فقط في نهاية سطر من التعليمات البرمجية. 964 00:44:45,439 --> 00:44:46,730 كنت لا حاجة إليها في كل مكان. 965 00:44:46,730 --> 00:44:48,896 ولكن هذا يعني فقط أنا القيام به مع هذا الخط من التعليمات البرمجية. 966 00:44:48,896 --> 00:44:51,080 اسمحوا لي أن تنتقل أخرى بيان أو وظيفة. 967 00:44:51,080 --> 00:44:53,010 سلسلة تعلن متغير. 968 00:44:53,010 --> 00:44:55,920 السلسلة مثل قوله تعطيني وعاء، من فضلك. 969 00:44:55,920 --> 00:44:57,940 واسمحوا لي أن وضع سلسلة في ذلك. 970 00:44:57,940 --> 00:44:59,430 >> والآن علامة المساواة. 971 00:44:59,430 --> 00:45:03,510 ما هو علامة المساواة أساسا ما يعادل؟ 972 00:45:03,510 --> 00:45:04,500 >> الجمهور: تعيين. 973 00:45:04,500 --> 00:45:06,190 >> J. DAVID مالان: نعم، تعيين القيمة. 974 00:45:06,190 --> 00:45:09,872 حتى لو كنت، على سبيل المثال، مكالمة هذه الوظيفة GetString، 975 00:45:09,872 --> 00:45:12,830 وسنرى في لحظة هذا الذهاب الى مطالبة المستخدم سلسلة. 976 00:45:12,830 --> 00:45:17,810 هذا هو مثل السماح لي ثم إرسال D-A-V-I-د على قطعة من الورق. 977 00:45:17,810 --> 00:45:21,060 وعندما أقول سلسلة ق يساوي GetString، 978 00:45:21,060 --> 00:45:24,140 يساوي لا يعني حقا متساوين في برمجة C. 979 00:45:24,140 --> 00:45:27,880 وهو ما يعني تعيين من الحق الجانب إلى الجانب الأيسر. 980 00:45:27,880 --> 00:45:29,510 >> حتى لقد حصلت على السلسلة. 981 00:45:29,510 --> 00:45:32,785 ويعني علامة المساواة وضعها في تخزين الحاويات تسمى ق. 982 00:45:32,785 --> 00:45:36,730 وثم تمرير هذا الخروج ل printf أن تفعل في الواقع شيء لها. 983 00:45:36,730 --> 00:45:39,790 >> حتى النتيجة النهائية ثم يجري لتبدو مختلفة قليلا. 984 00:45:39,790 --> 00:45:40,840 دعونا لا تجعل مرحبا-2. 985 00:45:40,840 --> 00:45:43,940 986 00:45:43,940 --> 00:45:45,260 إما أن تعمل. 987 00:45:45,260 --> 00:45:46,450 كنت بعد طول. 988 00:45:46,450 --> 00:45:47,940 جعل عملت مرحبا-2. 989 00:45:47,940 --> 00:45:52,640 نقطة خفض مرحبا-2، أدخل. 990 00:45:52,640 --> 00:45:54,620 >> ويبدو لي أن يكون لانهائي حلقة أو شيء. 991 00:45:54,620 --> 00:45:55,453 لا شيء يحدث. 992 00:45:55,453 --> 00:45:56,134 لماذا؟ 993 00:45:56,134 --> 00:45:57,805 >> الجمهور: انها لجعل حلقة لا نهائية. 994 00:45:57,805 --> 00:45:59,430 J. DAVID مالان: وهي حلقة لا نهائية. 995 00:45:59,430 --> 00:46:02,710 انها نوع من ينتظرني ل توفر فعلا مع بعض المدخلات. 996 00:46:02,710 --> 00:46:05,800 لذلك اسمحوا لي المضي قدما واكتب في ديفيد، وهاهنا. 997 00:46:05,800 --> 00:46:07,230 والآن تقول "مرحبا، ديفيد." 998 00:46:07,230 --> 00:46:09,040 إذا أنا تشغيله مرة أخرى. 999 00:46:09,040 --> 00:46:11,530 دعونا اكتب في روب، "مرحبا، روب." 1000 00:46:11,530 --> 00:46:13,900 >> الآن هذا هو الأسوأ واجهة المستخدم من أي وقت مضى. 1001 00:46:13,900 --> 00:46:16,110 المستخدم على ما يبدو من المفترض أن يعرف ما يجب القيام به. 1002 00:46:16,110 --> 00:46:17,120 ولكن لا يهم. 1003 00:46:17,120 --> 00:46:19,570 باستخدام نفس هذه البناية كتل تماما كما في خدش، 1004 00:46:19,570 --> 00:46:24,980 يمكننا حل هذه المشكلة ونقول شيء من هذا القبيل اسمك من فضلك، القولون، 1005 00:46:24,980 --> 00:46:27,820 الفضاء، مغلقة الاقتباس، على مقربة قوسين، منقوطة. 1006 00:46:27,820 --> 00:46:30,680 لذلك الكثير من ثانية سخف مع بناء الجملة. 1007 00:46:30,680 --> 00:46:34,040 >> ولكن لاحظت واضاف لقد مجرد قطعة اللغز فوق هذا واحد 1008 00:46:34,040 --> 00:46:35,280 وفوق هذا واحد. 1009 00:46:35,280 --> 00:46:38,870 وحتى الآن ما إذا كنت إعادة تشغيل هذا، مرحبا-2، أدخل. 1010 00:46:38,870 --> 00:46:41,180 انتظر لحظة. 1011 00:46:41,180 --> 00:46:41,830 ما هو الخطأ؟ 1012 00:46:41,830 --> 00:46:43,570 انها لا تتصرف بأي طريقة مختلفة. 1013 00:46:43,570 --> 00:46:44,200 نعم. 1014 00:46:44,200 --> 00:46:46,010 >> الجمهور: أنت لم تقم بتشغيل جعل مرة أخرى. 1015 00:46:46,010 --> 00:46:47,968 >> J. DAVID مالان: لم أكن جعل تشغيل مرة أخرى، أليس كذلك. 1016 00:46:47,968 --> 00:46:49,430 حتى لقد غيرت بلدي شفرة المصدر. 1017 00:46:49,430 --> 00:46:50,638 لكن مرة أخرى، هناك أن التدفق. 1018 00:46:50,638 --> 00:46:54,530 شفرة المصدر من خلال مترجم يعطي أنت رمز الكائن الجديد، أو 0S و1S. 1019 00:46:54,530 --> 00:47:00,209 لذلك أنا بحاجة فعلا ل جعل أعد تشغيل مرحبا-2 أدخل. 1020 00:47:00,209 --> 00:47:01,750 OK، شيء يبدو أنه قد حدث. 1021 00:47:01,750 --> 00:47:04,220 نقطة خفض مرحبا-2. 1022 00:47:04,220 --> 00:47:05,390 اسمك فضلك. 1023 00:47:05,390 --> 00:47:09,990 وأن يكون واضحا الآن، لماذا المؤشر على نفس الخط؟ 1024 00:47:09,990 --> 00:47:10,490 بالضبط. 1025 00:47:10,490 --> 00:47:13,020 لم أكن وضع مائل ن هنا في قانون بلدي. 1026 00:47:13,020 --> 00:47:16,110 حتى الآن أستطيع أن أكتب شيء من هذا القبيل Daven، أدخل. 1027 00:47:16,110 --> 00:47:18,710 يمكنني تشغيله مرة أخرى واكتب شيء من هذا القبيل غابي، أدخل، 1028 00:47:18,710 --> 00:47:22,250 ونحصل على برنامج مختلف مرارا وتكرارا وتكرارا. 1029 00:47:22,250 --> 00:47:28,940 >> الآن في نهاية المطاف ونحن في طريقنا إلى حاجة لاستخدام بعض قدرات مختلفة. 1030 00:47:28,940 --> 00:47:32,860 نحن بحاجة إلى إدخال بعض في نهاية المطاف الظروف أن تفعل أشياء مشروط. 1031 00:47:32,860 --> 00:47:35,550 ربما حلقات حتى نتمكن من القيام الأشياء مرارا وتكرارا. 1032 00:47:35,550 --> 00:47:38,220 >> ربما سيكون من الجميل إذا كنا يمكن تنفيذ المهام الخاصة بنا، 1033 00:47:38,220 --> 00:47:41,355 كما يمكننا تنفيذ منطقتنا printf أو إصدار منطقتنا من GetString 1034 00:47:41,355 --> 00:47:45,870 وGetFlow، لأن في نهاية المطاف حتى باستخدام هذه البيئة سطر الأوامر 1035 00:47:45,870 --> 00:47:49,780 يمكننا أن نفعل حتى أكثر اهتمام بصريا من الأشياء. 1036 00:47:49,780 --> 00:47:51,950 >> الواقع في الختام اسمحوا لي أن تفعل هذا. 1037 00:47:51,950 --> 00:47:54,020 انا ذاهب الى المضي قدما وإغلاق هذه النوافذ 1038 00:47:54,020 --> 00:47:57,400 وفتح هذا الرمز هنا، الذي هو مجرد أكبر 1039 00:47:57,400 --> 00:48:00,020 نسخة من ذلك جزءا لا يتجزأ نافذة الصالة. 1040 00:48:00,020 --> 00:48:02,329 حتى Gedit وليس فقط المكان لقانون بلدي، 1041 00:48:02,329 --> 00:48:05,620 ولكن أيضا المدمج في نافذة الصالة، و أبيض وأسود نافذة حيث يمكنني تشغيل 1042 00:48:05,620 --> 00:48:06,230 أوامر. 1043 00:48:06,230 --> 00:48:08,600 >> أنا مجرد حدث لفتح نسخة أكبر من هذا. 1044 00:48:08,600 --> 00:48:11,170 والآن انا ذاهب للذهاب الى المجلد الذي لدي بالفعل 1045 00:48:11,170 --> 00:48:13,150 وضع مسبقا على الموقع الالكتروني للدورة و. 1046 00:48:13,150 --> 00:48:16,720 وانا ذاهب الى المضي قدما و فتح ملف يسمى thadgavin.c، 1047 00:48:16,720 --> 00:48:18,710 الذي كتبه شخص آخر. 1048 00:48:18,710 --> 00:48:21,220 >> وإذا نظرنا إلى هذا، ليس هذا هو نوع من التعليمات البرمجية 1049 00:48:21,220 --> 00:48:24,370 سنكون الكتابة منذ الهدف من هذا الرمز 1050 00:48:24,370 --> 00:48:28,450 وكان لكتابة أجمل أبحث كود انه او انها يمكن، 1051 00:48:28,450 --> 00:48:31,290 بغض النظر عن وجود أو عدم إنسان آخر يمكن من أي وقت مضى 1052 00:48:31,290 --> 00:48:33,660 فهم هذا الرمز. 1053 00:48:33,660 --> 00:48:37,050 >> في الواقع، كل عام هناك ما هو يسمى C مسابقة غموض، والتي 1054 00:48:37,050 --> 00:48:39,570 غير حقيقي لالمهوسون الذين يكتبون التعليمات البرمجية التي لا أحد يستطيع قراءة، 1055 00:48:39,570 --> 00:48:42,050 ولكن أن يفعل شيئا إما حقا بسيطة أو مدهش حقا. 1056 00:48:42,050 --> 00:48:43,890 ونحن نظن أننا سوف أختم هذا البحث 1057 00:48:43,890 --> 00:48:48,300 في شيء أن يكون مدهشا كنت قد رأيت من قبل. 1058 00:48:48,300 --> 00:48:52,650 ولكننا سوف ينتهي في هذه ملاحظة، مائل نقطة، thadgavin. 1059 00:48:52,650 --> 00:48:53,860 ثم هذا هو ما ينتظر. 1060 00:48:53,860 --> 00:48:57,140 1061 00:48:57,140 --> 00:48:58,500 >> هذا كل شيء لCS50. 1062 00:48:58,500 --> 00:48:59,935 سوف نرى لك يوم الاربعاء. 1063 00:48:59,935 --> 00:49:04,284 1064 00:49:04,284 --> 00:49:10,016 >> [عزف الموسيقى] 1065 00:49:10,016 --> 00:53:31,883