-
Notifications
You must be signed in to change notification settings - Fork 287
/
Copy pathLecture 01 course_overview.ass
1665 lines (1662 loc) · 183 KB
/
Lecture 01 course_overview.ass
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
[Script Info]
; Script generated by Aegisub 3.2.2
; http://www.aegisub.org/
Title: Default Aegisub file
ScriptType: v4.00+
WrapStyle: 0
ScaledBorderAndShadow: yes
YCbCr Matrix: TV.601
PlayResX: 1280
PlayResY: 720
[Aegisub Project Garbage]
Export Filters: 帧率转换|Clean Tags - 整理特效标签
Export Encoding: Unicode (UTF-8)
Last Style Storage: Default
Audio File: ../../../../Desktop/csapp/Lecture 01 Course Overview.mp4
Video File: ../../../../Desktop/csapp/Lecture 01 Course Overview.mp4
Video AR Mode: 4
Video AR Value: 1.777778
Video Zoom Percent: 1.125000
Scroll Position: 1254
Active Line: 1267
Video Position: 105806
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: English,Noto Sans CJK SC Black,30,&H00FFFFFF,&H00412A2C,&H00412A2C,&H00412A2C,0,0,0,0,100,100,0,0,1,1.5,1.2,2,10,10,10,1
Style: Chinese,Noto Sans CJK SC Black,40,&H00FFFF00,&H00FFFFFF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,1.2,1.2,2,10,10,10,1
Style: 代码名词,Consolas,34,&H000000FD,&H000000FF,&H00FF00FF,&H00000000,-1,0,0,0,100,100,0,0,1,0.5,0,5,10,10,10,1
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:00.00,0:00:01.04,English,,0,0,0,,Hello everyone
Dialogue: 0,0:00:00.00,0:00:01.04,Chinese,,0,0,0,,大家好
Dialogue: 0,0:00:01.98,0:00:07.46,English,,0,0,0,,I'd like to welcome you all to this fall's this terms instance of
Dialogue: 0,0:00:01.98,0:00:07.46,Chinese,,0,0,0,,欢迎你们参与秋季学期的课程
Dialogue: 0,0:00:07.82,0:00:17.06,English,,0,0,0,,This course is officially either 15-213 from computer science or 18-213 from electrical and computer engineering
Dialogue: 0,0:00:07.82,0:00:17.06,Chinese,,0,0,0,,这门课既是计算机科学专业的 15-213 课程也是电子和计算机工程专业的 18-213 课程
Dialogue: 0,0:00:17.58,0:00:24.40,English,,0,0,0,,But a large number of people enrolled in this course are in one called 513 which is for graduate students
Dialogue: 0,0:00:17.58,0:00:24.40,Chinese,,0,0,0,,但是很多同学是通过面向研究生的 513 课程注册的这门课
Dialogue: 0,0:00:24.86,0:00:28.58,English,,0,0,0,,And to be totally honest you're not supposed to be here
Dialogue: 0,0:00:24.86,0:00:28.58,Chinese,,0,0,0,,老实说研究生不应该来教室上课
Dialogue: 0,0:00:28.58,0:00:33.28,English,,0,0,0,,Because you're supposed to watch the videos,the lectures by video later
Dialogue: 0,0:00:28.58,0:00:33.28,Chinese,,0,0,0,,因为你们应该通过课程视频来学习
Dialogue: 0,0:00:33.70,0:00:37.46,English,,0,0,0,,But we're not checking any cards, so I don't really know who you are
Dialogue: 0,0:00:33.70,0:00:37.46,Chinese,,0,0,0,,不过,我们不会点名。所以我也不知道你是谁
Dialogue: 0,0:00:38.70,0:00:44.06,English,,0,0,0,,Anyways this course is as you can see a very popular course on campus
Dialogue: 0,0:00:38.70,0:00:44.06,Chinese,,0,0,0,,众所周知这门课在校园里非常受欢迎
Dialogue: 0,0:00:44.06,0:00:46.36,English,,0,0,0,,We have over 700. 700?
Dialogue: 0,0:00:44.06,0:00:46.36,Chinese,,0,0,0,,有超过 700 人。700 人吗?
Dialogue: 0,0:00:46.86,0:00:53.82,English,,0,0,0,,600 shouldn't exaggerate students on campus enrolled in one of those three versions of the course
Dialogue: 0,0:00:46.86,0:00:53.82,Chinese,,0,0,0,,不夸张的讲有 600 个学生注册了这门课的三个版本中的其中一个
Dialogue: 0,0:00:54.52,0:01:04.38,English,,0,0,0,,Which if you think about a university of the size of CMU,that's like about 5% of the total student population
Dialogue: 0,0:00:54.52,0:01:04.38,Chinese,,0,0,0,,考虑到 CMU 的规模,注册这门课的人数占到了总学生数的 5%
Dialogue: 0,0:01:06.06,0:01:10.36,English,,0,0,0,,So we're very glad to have you here
Dialogue: 0,0:01:06.06,0:01:10.36,Chinese,,0,0,0,,所以我们很高兴你们能在这里
Dialogue: 0,0:01:10.36,0:01:13.36,English,,0,0,0,,(This gain is too high)
Dialogue: 0,0:01:10.36,0:01:13.36,Chinese,,0,0,0,,(麦克风声音有点大)
Dialogue: 0,0:01:13.74,0:01:18.58,English,,0,0,0,,(We overdid the gain,try that,that's better)
Dialogue: 0,0:01:13.74,0:01:18.58,Chinese,,0,0,0,,(增益调大了,现在好多了)
Dialogue: 0,0:01:20.42,0:01:21.78,English,,0,0,0,,My name is Randal E.Bryant
Dialogue: 0,0:01:20.42,0:01:21.78,Chinese,,0,0,0,,我是 Randal E.Bryant
Dialogue: 0,0:01:22.66,0:01:24.96,English,,0,0,0,,And my co-instructor is Dave O'Hallaron
Dialogue: 0,0:01:22.66,0:01:24.96,Chinese,,0,0,0,,和我合作的讲师是 Dave O'Hallaron
Dialogue: 0,0:01:24.96,0:01:28.96,English,,0,0,0,,And those names might be familiar if you have been to the bookstore
Dialogue: 0,0:01:24.96,0:01:28.96,Chinese,,0,0,0,,如果你们已经去过书店了应该对我们的名字比较熟悉
Dialogue: 0,0:01:31.08,0:01:33.20,English,,0,0,0,,Because the book was written by us
Dialogue: 0,0:01:31.08,0:01:33.20,Chinese,,0,0,0,,因为这门课的教材是我们写的
Dialogue: 0,0:01:33.62,0:01:40.78,English,,0,0,0,,We actually wrote this book we started 213 as a course in 1998
Dialogue: 0,0:01:33.62,0:01:40.78,Chinese,,0,0,0,,实际上我们是从 1998 年的 213 课程开始写这本书的
Dialogue: 0,0:01:42.64,0:01:45.52,English,,0,0,0,,And I know that you are children and all that stuff
Dialogue: 0,0:01:42.64,0:01:45.52,Chinese,,0,0,0,,我知道当时你们都还是小孩子
Dialogue: 0,0:01:45.54,0:01:55.60,English,,0,0,0,,But out of response for a new type of course that you'll see today that sort of gives people a in-depth understanding of systems
Dialogue: 0,0:01:45.54,0:01:55.60,Chinese,,0,0,0,,鉴于反馈,你们今天看到的新课程会让人们更好理解计算机系统
Dialogue: 0,0:01:56.06,0:01:58.88,English,,0,0,0,,But more from a high level or programmers perspective
Dialogue: 0,0:01:56.06,0:01:58.88,Chinese,,0,0,0,,不过是从更高的角度和程序员的视角
Dialogue: 0,0:01:58.88,0:02:01.38,English,,0,0,0,,And we'll talk some about the philosophy of the course later
Dialogue: 0,0:01:58.88,0:02:01.38,Chinese,,0,0,0,,之后我们会谈到这门课的哲学
Dialogue: 0,0:02:02.72,0:02:08.70,English,,0,0,0,,So this book as you see are just came out its third edition last March
Dialogue: 0,0:02:02.72,0:02:08.70,Chinese,,0,0,0,,正如你们所见这本书 3 月份才刚刚出本第三版(2015-03)
Dialogue: 0,0:02:08.86,0:02:11.46,English,,0,0,0,,And that's the required text for the course
Dialogue: 0,0:02:08.86,0:02:11.46,Chinese,,0,0,0,,这是这门课的必备教材
Dialogue: 0,0:02:12.10,0:02:16.10,English,,0,0,0,,And there is nothing you can do to avoid buying that book
Dialogue: 0,0:02:12.10,0:02:16.10,Chinese,,0,0,0,,你们无可避免都需要买这本书
Dialogue: 0,0:02:16.76,0:02:18.40,English,,0,0,0,,And it's not because we're greedy
Dialogue: 0,0:02:16.76,0:02:18.40,Chinese,,0,0,0,,不是因为我们贪财
Dialogue: 0,0:02:18.90,0:02:27.08,English,,0,0,0,,I Actually we take the money we get from royalty for students in this course or any CMU course and we donate it to CMU
Dialogue: 0,0:02:18.90,0:02:27.08,Chinese,,0,0,0,,实际上我们通过这门课或者其他 CMU 课程挣到的版税都捐给了 CMU
Dialogue: 0,0:02:27.74,0:02:31.20,English,,0,0,0,,So we're not actually making any money out of you buying the book
Dialogue: 0,0:02:27.74,0:02:31.20,Chinese,,0,0,0,,所以我们没有通过学生购买教材挣到 1 分钱
Dialogue: 0,0:02:31.22,0:02:37.00,English,,0,0,0,,But it's a simple reality that the new version is different than the old
Dialogue: 0,0:02:31.22,0:02:37.00,Chinese,,0,0,0,,话说回来新版本和旧版本有很大的不同
Dialogue: 0,0:02:37.50,0:02:39.70,English,,0,0,0,,We expect you to be using the new version
Dialogue: 0,0:02:37.50,0:02:39.70,Chinese,,0,0,0,,我们希望你们使用新版本
Dialogue: 0,0:02:40.28,0:02:44.88,English,,0,0,0,,There are no electronic copies,there are no pirated versions
Dialogue: 0,0:02:40.28,0:02:44.88,Chinese,,0,0,0,,现在还没有电子版,盗版
Dialogue: 0,0:02:45.02,0:02:47.38,English,,0,0,0,,So you basically have to buy the book
Dialogue: 0,0:02:45.02,0:02:47.38,Chinese,,0,0,0,,所以你们必须买书
Dialogue: 0,0:02:47.54,0:02:50.66,English,,0,0,0,,But I don't really apologize for that
Dialogue: 0,0:02:47.54,0:02:50.66,Chinese,,0,0,0,,但是我不准备向大家道歉
Dialogue: 0,0:02:50.66,0:02:57.38,English,,0,0,0,,Because I know you or your parents who somebody's paying a lot of money for you to be here
Dialogue: 0,0:02:50.66,0:02:57.38,Chinese,,0,0,0,,因为我知道你的父母或者其他什么人给了你们很多钱让你们来这里学习
Dialogue: 0,0:02:57.50,0:03:01.56,English,,0,0,0,,So the price of the book is really a relatively small amount relative to that
Dialogue: 0,0:02:57.50,0:03:01.56,Chinese,,0,0,0,,相比这下购买这本书是一笔非常小的花销
Dialogue: 0,0:03:03.02,0:03:06.86,English,,0,0,0,,And this course by the way is not some courses serious
Dialogue: 0,0:03:03.02,0:03:06.86,Chinese,,0,0,0,,顺便说一下,这门课不像其它某些十分严肃的课
Dialogue: 0,0:03:07.20,0:03:12.76,English,,0,0,0,,Oh yeah this book you might want to look at it once in a while but actually the course has nothing to do with that
Dialogue: 0,0:03:07.20,0:03:12.76,Chinese,,0,0,0,,你可能时不时会想看这本书,但是实际上课程与这本书没什么关系
Dialogue: 0,0:03:13.16,0:03:18.36,English,,0,0,0,,This course,the book and the course are one,they're very tied together
Dialogue: 0,0:03:13.16,0:03:18.36,Chinese,,0,0,0,,这门课和这本书是一个整体,非常紧密的联系在一起
Dialogue: 0,0:03:18.36,0:03:26.10,English,,0,0,0,,There'll be parts of the book that we don't go into all the details that are in the book sometimes
Dialogue: 0,0:03:18.36,0:03:26.10,Chinese,,0,0,0,,有时我们并不能在上课是讲到书里面的所有细节
Dialogue: 0,0:03:26.12,0:03:27.98,English,,0,0,0,,But we expect you to be able to figure it out
Dialogue: 0,0:03:26.12,0:03:27.98,Chinese,,0,0,0,,但是我们希望你们能自己能弄明白
Dialogue: 0,0:03:28.80,0:03:33.90,English,,0,0,0,,And so really the course in the book are tied together
Dialogue: 0,0:03:28.80,0:03:33.90,Chinese,,0,0,0,,这门课和这本书紧密的联系在一起
Dialogue: 0,0:03:33.90,0:03:37.82,English,,0,0,0,,And they were very much the progress of the course the topics covered
Dialogue: 0,0:03:33.90,0:03:37.82,Chinese,,0,0,0,,紧跟课程的进展涵盖了所有主题
Dialogue: 0,0:03:38.24,0:03:44.22,English,,0,0,0,,How it's covered everything about it is consistent with the book
Dialogue: 0,0:03:38.24,0:03:44.22,Chinese,,0,0,0,,和怎么涵盖的所有内容都包含在这本书当中了
Dialogue: 0,0:03:45.24,0:03:49.32,English,,0,0,0,,We wrote the book because of the course think of them as course notes
Dialogue: 0,0:03:45.24,0:03:49.32,Chinese,,0,0,0,,我们写这本书的原因是拿这本书当作课程笔记
Dialogue: 0,0:03:50.96,0:03:54.32,English,,0,0,0,,So and the reason why we are teaching this term by the way
Dialogue: 0,0:03:50.96,0:03:54.32,Chinese,,0,0,0,,这个学期我们使用这种方式教授这门课的原因是
Dialogue: 0,0:03:54.32,0:03:59.30,English,,0,0,0,,We have't taught together in several years,but because this is the first roll out of this book
Dialogue: 0,0:03:54.32,0:03:59.30,Chinese,,0,0,0,,我们好几年没有一起授课了,但是因为这次是这本书第一次推出到市场
Dialogue: 0,0:03:59.96,0:04:06.40,English,,0,0,0,,And not only is it being used here but it's actually used by about 250 schools around the world
Dialogue: 0,0:03:59.96,0:04:06.40,Chinese,,0,0,0,,这本书不仅在这里被使用,全世界接近 250 所学校也在使用这本教材
Dialogue: 0,0:04:06.94,0:04:16.76,English,,0,0,0,,And many of those people are also going through the same activities of teaching from this new edition for the first time
Dialogue: 0,0:04:06.94,0:04:16.76,Chinese,,0,0,0,,这里面很多人都是第一次使用新版本的教材来进行和我们相同的教学活动
Dialogue: 0,0:04:17.18,0:04:21.90,English,,0,0,0,,And so we wanted to make sure all the material for the course was a sort of put in order and things
Dialogue: 0,0:04:17.18,0:04:21.90,Chinese,,0,0,0,,因此我们要确保这门课所有的内容都是有序的
Dialogue: 0,0:04:22.44,0:04:30.04,English,,0,0,0,,Because other universities and other colleges use this material...this supporting material we've developed
Dialogue: 0,0:04:22.44,0:04:30.04,Chinese,,0,0,0,,因为有其他大学或学院使用我们开发的教学材料
Dialogue: 0,0:04:30.84,0:04:37.52,English,,0,0,0,,So that's the course and today is the first election we're sort of doing a tag team here
Dialogue: 0,0:04:30.84,0:04:37.52,Chinese,,0,0,0,,今天是这门课的第一节课,我将会介绍一下教学团队
Dialogue: 0,0:04:37.52,0:04:41.94,English,,0,0,0,,Yeah I'll talk the high level what the course is about what the main themes are
Dialogue: 0,0:04:37.52,0:04:41.94,Chinese,,0,0,0,,这门课我会教授主要的章节
Dialogue: 0,0:04:42.52,0:04:45.24,English,,0,0,0,,And Dave will talk more about the logistics
Dialogue: 0,0:04:42.52,0:04:45.24,Chinese,,0,0,0,,Dave 更多的讲授逻辑的部分
Dialogue: 0,0:04:48.40,0:04:52.12,English,,0,0,0,,So we refer the the thing we have that
Dialogue: 0,0:04:48.40,0:04:52.12,Chinese,,0,0,0,,课程内容参考我们的所见所知
Dialogue: 0,0:04:52.14,0:05:01.84,English,,0,0,0,,When the very first time I typed the number of this course into a text editor
Dialogue: 0,0:04:52.14,0:05:01.84,Chinese,,0,0,0,,当我第一次在文本编辑器中输入这门课的编号时
Dialogue: 0,0:05:01.86,0:05:06.02,English,,0,0,0,,I realized I've typed those five digits many times in my career
Dialogue: 0,0:05:01.86,0:05:06.02,Chinese,,0,0,0,,我就已经意识到我将会在我的职业生涯中输入这五个数字很多次
Dialogue: 0,0:05:06.02,0:05:10.20,English,,0,0,0,,Because it's the zip code of CMU, 15213
Dialogue: 0,0:05:06.02,0:05:10.20,Chinese,,0,0,0,,因为 15213 是 CMU 的邮政编码
Dialogue: 0,0:05:10.28,0:05:12.48,English,,0,0,0,,So that's where we come up with the same
Dialogue: 0,0:05:10.28,0:05:12.48,Chinese,,0,0,0,,因此我们从相同的地方开始
Dialogue: 0,0:05:17.08,0:05:26.18,English,,0,0,0,,So there's a few things about this course for the most part you know in your normal undergraduate curriculum
Dialogue: 0,0:05:17.08,0:05:26.18,Chinese,,0,0,0,,所以这门课有一些内容你们大多数人在本科课程中都曾接触到
Dialogue: 0,0:05:26.32,0:05:31.74,English,,0,0,0,,When you've learned programming,you've been very much separated from the realities of the machine
Dialogue: 0,0:05:26.32,0:05:31.74,Chinese,,0,0,0,,你们已经学会了编程,但是你们和计算机的本质相隔甚远
Dialogue: 0,0:05:31.78,0:05:38.88,English,,0,0,0,,You just think about code just you put some text into some little box
Dialogue: 0,0:05:31.78,0:05:38.88,Chinese,,0,0,0,,你们只认为编程是把文本放入一个小盒子里
Dialogue: 0,0:05:39.10,0:05:46.62,English,,0,0,0,,Somehow, and outcomes of behavior that it hopefully is what you intended the program to do
Dialogue: 0,0:05:39.10,0:05:46.62,Chinese,,0,0,0,,不知道为什么,产生的结果和行为是你们希望程序做的
Dialogue: 0,0:05:47.06,0:05:54.04,English,,0,0,0,,The purpose of this course is to give you enough understanding of what that box is doing when it executes your code
Dialogue: 0,0:05:47.06,0:05:54.04,Chinese,,0,0,0,,这门课的目的是让你深入了解当在执行你的代码时「盒子」在做什么
Dialogue: 0,0:05:54.64,0:06:00.82,English,,0,0,0,,And through that to help you become better at what you're trying to do
Dialogue: 0,0:05:54.64,0:06:00.82,Chinese,,0,0,0,,通过这些来帮助你在你想做的事情上做得更好
Dialogue: 0,0:06:01.70,0:06:07.52,English,,0,0,0,,So some of the outcomes is there's really two types of outcomes from this course
Dialogue: 0,0:06:01.70,0:06:07.52,Chinese,,0,0,0,,这样会产生两种结果
Dialogue: 0,0:06:07.54,0:06:12.02,English,,0,0,0,,One is that if this is the only systems course you ever take in your whole life
Dialogue: 0,0:06:07.54,0:06:12.02,Chinese,,0,0,0,,一种是,如果这是你一生中唯一的系统课程
Dialogue: 0,0:06:12.36,0:06:17.94,English,,0,0,0,,You will get useful material from it,you will learn tools,tricks,methods
Dialogue: 0,0:06:12.36,0:06:17.94,Chinese,,0,0,0,,你将获得有用的东西,了解工具、技巧和方法
Dialogue: 0,0:06:18.38,0:06:23.20,English,,0,0,0,,That will help you if you ever are in involved in software development
Dialogue: 0,0:06:18.38,0:06:23.20,Chinese,,0,0,0,,如果你们曾经参与过软件开发
Dialogue: 0,0:06:23.46,0:06:32.20,English,,0,0,0,,large-scale software engineering projects,systems hardware design any aspect of computer technology
Dialogue: 0,0:06:23.46,0:06:32.20,Chinese,,0,0,0,,大规模的软件工程项目、系统硬件设计或计算机技术的任何方面
Dialogue: 0,0:06:32.20,0:06:35.14,English,,0,0,0,,This will help you be better at what you do
Dialogue: 0,0:06:32.20,0:06:35.14,Chinese,,0,0,0,,它会帮助你们做的更好
Dialogue: 0,0:06:35.58,0:06:41.08,English,,0,0,0,,You'll understand what programs do how they work,what the machines that support them do
Dialogue: 0,0:06:35.58,0:06:41.08,Chinese,,0,0,0,,你们会明白程序是如何运行的,机器是如何支持程序运行的
Dialogue: 0,0:06:41.30,0:06:45.26,English,,0,0,0,,Why sometimes they work really well and why sometimes they don't work so well
Dialogue: 0,0:06:41.30,0:06:45.26,Chinese,,0,0,0,,会明白为什么有时程序可以正常运行有时却不能
Dialogue: 0,0:06:46.94,0:06:54.14,English,,0,0,0,,It also is intended as it's sort of stepping stone into a whole number of other courses at CMU
Dialogue: 0,0:06:46.94,0:06:54.14,Chinese,,0,0,0,,它也是 CMU 其他课程的垫脚石
Dialogue: 0,0:06:54.18,0:06:58.98,English,,0,0,0,,That will give you more in-depth understanding of computer technology
Dialogue: 0,0:06:54.18,0:06:58.98,Chinese,,0,0,0,,会让你们更深入的理解计算机技术
Dialogue: 0,0:06:59.00,0:07:01.80,English,,0,0,0,,But our sort of specialized by topical area
Dialogue: 0,0:06:59.00,0:07:01.80,Chinese,,0,0,0,,但是我们专注于一些与主题有关的方面
Dialogue: 0,0:07:02.34,0:07:07.60,English,,0,0,0,,Whether it's computer networking or operating systems or embedded systems
Dialogue: 0,0:07:02.34,0:07:07.60,Chinese,,0,0,0,,比如计算机网络、操作系统、嵌入式系统
Dialogue: 0,0:07:08.50,0:07:16.90,English,,0,0,0,,Where you'll take the sort of ideas from this course and be able to then learn in a somewhat narrower but deeper sense what's really going on
Dialogue: 0,0:07:08.50,0:07:16.90,Chinese,,0,0,0,,你会从这门课上学到一些概念然后能够学习更局限但是更深层次的运行规律
Dialogue: 0,0:07:18.60,0:07:26.04,English,,0,0,0,,And so it really is trying to serve those two goals of making you more effective giving you useful ideas and tools right away
Dialogue: 0,0:07:18.60,0:07:26.04,Chinese,,0,0,0,,我们致力于实现这两个目标,让你更有效率,给你十分有用的想法和工具
Dialogue: 0,0:07:26.32,0:07:29.58,English,,0,0,0,,But also preparing you for later courses
Dialogue: 0,0:07:26.32,0:07:29.58,Chinese,,0,0,0,,并且让你做好学习后续有关的课程的准备
Dialogue: 0,0:07:29.82,0:07:36.56,English,,0,0,0,,So when we talked about this is sort of what's why what kind of stuff will you learn from this course
Dialogue: 0,0:07:29.82,0:07:36.56,Chinese,,0,0,0,,所以提到你能从这个课程学到什么东西和为什么要学这门课
Dialogue: 0,0:07:37.10,0:07:44.74,English,,0,0,0,,It is to go through a series of what we call great realities places where sort of computers meet up
Dialogue: 0,0:07:37.10,0:07:44.74,Chinese,,0,0,0,,它将经历一系列我们称之为伟大现实的地方,在那里,各种各样的计算机相遇
Dialogue: 0,0:07:45.18,0:07:49.96,English,,0,0,0,,real-life computers get meet up against your expectations and maybe they're not quite the same
Dialogue: 0,0:07:45.18,0:07:49.96,Chinese,,0,0,0,,现实生活中的电脑和你们所期望的或许不是完全相同
Dialogue: 0,0:07:50.46,0:07:57.44,English,,0,0,0,,so one of them is and the first part of the course is going to take a fairly detailed look how numbers are represented in computers
Dialogue: 0,0:07:50.46,0:07:57.44,Chinese,,0,0,0,,其中一种就是在课程的第一部分中仔细观察数字在计算机中怎么表示的
Dialogue: 0,0:07:57.92,0:08:04.96,English,,0,0,0,,And you'll learn some things that are on one hand surprising and another hand will start to make sense when you understand it better
Dialogue: 0,0:07:57.92,0:08:04.96,Chinese,,0,0,0,,一方面你会在学习过程中感到惊讶,另一方面当你们理解之后又会觉得精巧
Dialogue: 0,0:08:06.60,0:08:11.36,English,,0,0,0,,So a simple case is for numbers
Dialogue: 0,0:08:06.60,0:08:11.36,Chinese,,0,0,0,,一个简单的例子就是数字
Dialogue: 0,0:08:13.18,0:08:18.04,English,,0,0,0,,I don't know when it was but it was probably in about eighth grade algebra that I learned that
Dialogue: 0,0:08:13.18,0:08:18.04,Chinese,,0,0,0,,我不知道是什么时候,大概是在八年级的代数课上我学到
Dialogue: 0,0:08:18.50,0:08:23.52,English,,0,0,0,,If you square a number it will be at least zero if it's not an imaginary number
Dialogue: 0,0:08:18.50,0:08:23.52,Chinese,,0,0,0,,如果你计算一个数的平方,只要它不是虚数,那么结果至少是 0
Dialogue: 0,0:08:23.74,0:08:33.22,English,,0,0,0,,So an integer or a real number you'd expect to square it and it to be a positive value or perhaps zero right?
Dialogue: 0,0:08:23.74,0:08:33.22,Chinese,,0,0,0,,所以对于一个整数或实数,它的平方你会认为结果是一个非负数,对吗?
Dialogue: 0,0:08:35.28,0:08:39.70,English,,0,0,0,,And that's actually generally true with floats a representation of floating-point number
Dialogue: 0,0:08:35.28,0:08:39.70,Chinese,,0,0,0,,大多数情况下对于 float 类型所表示的浮点数会得到正确的结果
Dialogue: 0,0:08:40.48,0:08:49.22,English,,0,0,0,,But with integers or int you know the computer representation of integers it's not so clear
Dialogue: 0,0:08:40.48,0:08:49.22,Chinese,,0,0,0,,但是对于整数或者 int 类型(计算机中的整数类型)就不是很清楚了
Dialogue: 0,0:08:49.64,0:08:59.08,English,,0,0,0,,So for example if you square 40,000 on most computers then you'll get whatever that should be as you'd expect
Dialogue: 0,0:08:49.64,0:08:59.08,Chinese,,0,0,0,,举个例子,如果你们计算 40,000 的平方,大部分的计算机会给出你们想要的结果
Dialogue: 0,0:08:59.96,0:09:02.00,English,,0,0,0,,But what if you square 50000?
Dialogue: 0,0:08:59.96,0:09:02.00,Chinese,,0,0,0,,但是 50,000 的平方是多少呢?
Dialogue: 0,0:09:02.50,0:09:09.40,English,,0,0,0,,So you could do this in your head,but I actually built into this laptop computer
Dialogue: 0,0:09:02.50,0:09:09.40,Chinese,,0,0,0,,你们可以在你们的脑海中算一下,但实际上我算数都靠这台笔记本电脑
Dialogue: 0,0:09:09.52,0:09:12.66,English,,0,0,0,,So I'm going to go ahead and use it
Dialogue: 0,0:09:09.52,0:09:12.66,Chinese,,0,0,0,,所以我要用它
Dialogue: 0,0:09:15.98,0:09:16.78,English,,0,0,0,,Emm...
Dialogue: 0,0:09:15.98,0:09:16.78,Chinese,,0,0,0,,额...
Dialogue: 0,0:09:24.78,0:09:31.06,English,,0,0,0,,And use a tool which on UNIX systems is called...
Dialogue: 0,0:09:24.78,0:09:31.06,Chinese,,0,0,0,,使用的工具在 UNIX 系统中叫做
Dialogue: 0,0:09:44.84,0:09:52.40,English,,0,0,0,,Linux systems is called GDB,but on Macintosh OS X it's called LLDB
Dialogue: 0,0:09:44.84,0:09:52.40,Chinese,,0,0,0,,在 Linux 系统中是叫做 GDB,在 Macintosh OS 上被叫做 LLDB
Dialogue: 0,0:09:52.40,0:09:53.80,English,,0,0,0,,But they're pretty much the same program
Dialogue: 0,0:09:52.40,0:09:53.80,Chinese,,0,0,0,,但是它们是几乎一样的程序
Dialogue: 0,0:09:54.20,0:09:57.40,English,,0,0,0,,You will get to know this program really really well this term
Dialogue: 0,0:09:54.20,0:09:57.40,Chinese,,0,0,0,,在这个学期你们会很好的掌握这个程序
Dialogue: 0,0:09:58.22,0:10:02.56,English,,0,0,0,,So like I said a few square 40,000
Dialogue: 0,0:09:58.22,0:10:02.56,Chinese,,0,0,0,,像我说的 40,000 的平方
Dialogue: 0,0:10:03.16,0:10:04.28,English,,0,0,0,,You get...
Dialogue: 0,0:10:03.16,0:10:04.28,Chinese,,0,0,0,,你会获得...
Dialogue: 0,0:10:05.36,0:10:07.86,English,,0,0,0,,What you'd expect?
Dialogue: 0,0:10:05.36,0:10:07.86,Chinese,,0,0,0,,你们期望是什么?
Dialogue: 0,0:10:09.38,0:10:14.18,English,,0,0,0,,But let's change this to 50,000
Dialogue: 0,0:10:09.38,0:10:14.18,Chinese,,0,0,0,,但是把这个数改成 50,000
Dialogue: 0,0:10:17.50,0:10:23.60,English,,0,0,0,,And you get a very peculiar number that doesn't look anything like you'd expect 50,000 squared to be
Dialogue: 0,0:10:17.50,0:10:23.60,Chinese,,0,0,0,,你会看到一个很奇怪的数字,它看起来和你所期待的 50,000 平方的结果大相径庭
Dialogue: 0,0:10:23.60,0:10:24.98,English,,0,0,0,,And in fact it's negative
Dialogue: 0,0:10:23.60,0:10:24.98,Chinese,,0,0,0,,事实上它是一个负数
Dialogue: 0,0:10:26.96,0:10:30.96,English,,0,0,0,,And so that might just seem like well there must be a mistake or something
Dialogue: 0,0:10:26.96,0:10:30.96,Chinese,,0,0,0,,看起来程序好像出错了
Dialogue: 0,0:10:30.98,0:10:39.58,English,,0,0,0,,No that's just the way it is.Because this computer is expecting numbers to be represented as 32-bit values
Dialogue: 0,0:10:30.98,0:10:39.58,Chinese,,0,0,0,,不,就是这样。因为这台计算机期望数字是 32-bit (32 位) 的值
Dialogue: 0,0:10:40.28,0:10:48.90,English,,0,0,0,,And the bit pattern that you get when you do this multiplication happens to be the representation of a negative number
Dialogue: 0,0:10:40.28,0:10:48.90,Chinese,,0,0,0,,当你做完乘法运算后的得到值的位的格式恰好是一个负数的格式
Dialogue: 0,0:10:49.14,0:10:56.62,English,,0,0,0,,So that's a an example of where your normal expectations about integer arithmetic may or may not hold
Dialogue: 0,0:10:49.14,0:10:56.62,Chinese,,0,0,0,,这是个例子说明你对整数运算的正常期望可能成立,也可能不成立
Dialogue: 0,0:10:57.30,0:11:01.58,English,,0,0,0,,On the other hand...there are some places...
Dialogue: 0,0:10:57.30,0:11:01.58,Chinese,,0,0,0,,另外在其他的例子里
Dialogue: 0,0:11:08.08,0:11:15.02,English,,0,0,0,,If I try to do the same thing 300*400*500*600
Dialogue: 0,0:11:08.08,0:11:15.02,Chinese,,0,0,0,,比如我计算 300*400*500*600
Dialogue: 0,0:11:15.02,0:11:19.10,English,,0,0,0,,Then all of a sudden I also get a number that clearly is not what you'd expect
Dialogue: 0,0:11:15.02,0:11:19.10,Chinese,,0,0,0,,然后我突然得出一个结果,这显然不是你们期望的
Dialogue: 0,0:11:19.10,0:11:20.82,English,,0,0,0,,Because the same thing has happened
Dialogue: 0,0:11:19.10,0:11:20.82,Chinese,,0,0,0,,因为发生了同样的事情
Dialogue: 0,0:11:21.22,0:11:26.38,English,,0,0,0,,I've gotten an overflow it happens that it's overflowed to a value that's positive not negative
Dialogue: 0,0:11:21.22,0:11:26.38,Chinese,,0,0,0,,我计算的结果溢出了。当发生溢出时值可能变成整数或者负数
Dialogue: 0,0:11:26.40,0:11:30.96,English,,0,0,0,,But it still is obviously not the integer product of those four numbers
Dialogue: 0,0:11:26.40,0:11:30.96,Chinese,,0,0,0,,但它显然不是这四个数的整数乘积
Dialogue: 0,0:11:31.94,0:11:42.80,English,,0,0,0,,On the other hand one thing you'll find is even though this arithmetic is not a normal sort of integer arithmetic
Dialogue: 0,0:11:31.94,0:11:42.80,Chinese,,0,0,0,,另一方面,你会发现尽管这个运算不是一种合理的整数运算
Dialogue: 0,0:11:43.90,0:11:47.56,English,,0,0,0,,It actually has some well-behaved properties
Dialogue: 0,0:11:43.90,0:11:47.56,Chinese,,0,0,0,,它实际上有一些表现良好的性质
Dialogue: 0,0:11:48.00,0:11:50.30,English,,0,0,0,,So for example if you look at...
Dialogue: 0,0:11:48.00,0:11:50.30,Chinese,,0,0,0,,举个例子,如果你注意到
Dialogue: 0,0:11:53.96,0:11:59.72,English,,0,0,0,,What I've done is I just moved the 300 around from the beginning of the product to the end of the product
Dialogue: 0,0:11:53.96,0:11:59.72,Chinese,,0,0,0,,我把 300 从算式的前面移到算式的后面
Dialogue: 0,0:12:00.46,0:12:04.30,English,,0,0,0,,So now if you think about how associativity and commutativity works
Dialogue: 0,0:12:00.46,0:12:04.30,Chinese,,0,0,0,,现在,如果你们想一下结合律和交换律是如何起作用的
Dialogue: 0,0:12:04.90,0:12:07.92,English,,0,0,0,,I'm basically multiplying these four numbers in a different order
Dialogue: 0,0:12:04.90,0:12:07.92,Chinese,,0,0,0,,我仅仅把这四个数字以不同顺序相乘
Dialogue: 0,0:12:08.64,0:12:14.44,English,,0,0,0,,But what you see is you get the same funny-looking result no matter how you do it
Dialogue: 0,0:12:08.64,0:12:14.44,Chinese,,0,0,0,,但是无论你做什么你都会得到相同的看起来很滑稽的结果
Dialogue: 0,0:12:14.48,0:12:18.72,English,,0,0,0,,So what you can say from this is integer arithmetic is commutative and associative
Dialogue: 0,0:12:14.48,0:12:18.72,Chinese,,0,0,0,,所以你可以说,整数运算符合交换律和结合律
Dialogue: 0,0:12:18.80,0:12:22.50,English,,0,0,0,,So it obeys some of the conventional mathematical properties
Dialogue: 0,0:12:18.80,0:12:22.50,Chinese,,0,0,0,,它符合一些常规的运算性质
Dialogue: 0,0:12:22.86,0:12:25.78,English,,0,0,0,,It just isn't what you'd expect it to be
Dialogue: 0,0:12:22.86,0:12:25.78,Chinese,,0,0,0,,并不是像你期待的那样
Dialogue: 0,0:12:25.78,0:12:36.00,English,,0,0,0,,It's not a normal sort of mathematical integer arithmetic
Dialogue: 0,0:12:25.78,0:12:36.00,Chinese,,0,0,0,,这不是一种正常的整数运算
Dialogue: 0,0:12:36.56,0:12:50.83,English,,0,0,0,,So the cartoon here shows an example that's a similar possibility.We get to it
Dialogue: 0,0:12:36.56,0:12:50.83,Chinese,,0,0,0,,这里漫画所展示的情况和现在很类似
Dialogue: 0,0:12:58.50,0:13:00.42,English,,0,0,0,,Oh I guess it comes at the end
Dialogue: 0,0:12:58.50,0:13:00.42,Chinese,,0,0,0,,我想应该在最后
Dialogue: 0,0:13:01.26,0:13:08.88,English,,0,0,0,,So then the next question is is a addition associative right can you order the numbers
Dialogue: 0,0:13:01.26,0:13:08.88,Chinese,,0,0,0,,下一个问题是它符合加法结合律吗,你能改变顺序后再运算吗?
Dialogue: 0,0:13:09.20,0:13:15.52,English,,0,0,0,,And as you probably might have figured both in the integer arithmetic, even though as this potential for overflow
Dialogue: 0,0:13:09.20,0:13:15.52,Chinese,,0,0,0,,你可能在整数运算中计算过了,尽管(乘法和加法)两种运算都有溢出风险
Dialogue: 0,0:13:16.00,0:13:19.16,English,,0,0,0,,It is associative and it's commutative too
Dialogue: 0,0:13:16.00,0:13:19.16,Chinese,,0,0,0,,它们都符合交换律和结合律
Dialogue: 0,0:13:19.82,0:13:22.44,English,,0,0,0,,But for floats it's not really quite the same
Dialogue: 0,0:13:19.82,0:13:22.44,Chinese,,0,0,0,,但是浮点数就不一样了
Dialogue: 0,0:13:23.48,0:13:30.92,English,,0,0,0,,Because the range of values you can get in floating pointers so extreme that some numbers kind of disappear on you
Dialogue: 0,0:13:23.48,0:13:30.92,Chinese,,0,0,0,,因为浮点数的取值范围是如此的极端以至于有些数字会消失
Dialogue: 0,0:13:30.94,0:13:35.34,English,,0,0,0,,So the example I'll show without having to use a computer to do it
Dialogue: 0,0:13:30.94,0:13:35.34,Chinese,,0,0,0,,这个例子我不需要用电脑来做
Dialogue: 0,0:13:35.74,0:13:39.12,English,,0,0,0,,If you take a big number and subtract it from itself
Dialogue: 0,0:13:35.74,0:13:39.12,Chinese,,0,0,0,,如果你取一个大的数,然后减去它本身
Dialogue: 0,0:13:39.74,0:13:40.44,English,,0,0,0,,You'll get zero
Dialogue: 0,0:13:39.74,0:13:40.44,Chinese,,0,0,0,,你会得到 0
Dialogue: 0,0:13:40.60,0:13:44.78,English,,0,0,0,,So if you add that to 3.14 you'll get 3.14
Dialogue: 0,0:13:40.60,0:13:44.78,Chinese,,0,0,0,,如果你再加上 3.14 你会得到 3.14
Dialogue: 0,0:13:45.72,0:13:52.82,English,,0,0,0,,But if you take those two numbers and you reorder the how you combine them
Dialogue: 0,0:13:45.72,0:13:52.82,Chinese,,0,0,0,,但是你把两个数改变顺序并计算
Dialogue: 0,0:13:53.04,0:13:59.18,English,,0,0,0,,So that 3.14 compared to -1e20 is so insignificant
Dialogue: 0,0:13:53.04,0:13:59.18,Chinese,,0,0,0,,和 -1e20 大小相比 3.14 就显得微不足道了
Dialogue: 0,0:13:59.18,0:14:04.30,English,,0,0,0,,That that result gets turned into -1e20
Dialogue: 0,0:13:59.18,0:14:04.30,Chinese,,0,0,0,,结果是 -1e20(-1 后面 20 个 0)
Dialogue: 0,0:14:04.70,0:14:10.04,English,,0,0,0,,And you add that to 1e20 and you end up with zero.So it's not associative
Dialogue: 0,0:14:04.70,0:14:10.04,Chinese,,0,0,0,,然后加上 1e20 你会得到 0。这不符合结合律
Dialogue: 0,0:14:10.56,0:14:18.62,English,,0,0,0,,And so what you see is the both these number systems have some peculiarities
Dialogue: 0,0:14:10.56,0:14:18.62,Chinese,,0,0,0,,所以你看出这两种数系都有一些古怪
Dialogue: 0,0:14:18.64,0:14:26.08,English,,0,0,0,,And it all comes down to the fact that they use finite representations of things that are potentially infinite in their expanse
Dialogue: 0,0:14:18.64,0:14:26.08,Chinese,,0,0,0,,这一切都归结为一个事实,他们用有限的位组合形式表示在数域中无限扩张的数
Dialogue: 0,0:14:26.68,0:14:30.10,English,,0,0,0,,So there's some compromises in how those work
Dialogue: 0,0:14:26.68,0:14:30.10,Chinese,,0,0,0,,所以在如何实现功能上有一些妥协
Dialogue: 0,0:14:30.58,0:14:36.10,English,,0,0,0,,And what the compromise is you can overflow an integer and run out of room
Dialogue: 0,0:14:30.58,0:14:36.10,Chinese,,0,0,0,,折衷的办法是你可以溢出一个整数然后耗尽空间
Dialogue: 0,0:14:36.54,0:14:42.56,English,,0,0,0,,And in floating point numbers you have roundoff problems where you sort of drop the digits that aren't significant
Dialogue: 0,0:14:36.54,0:14:42.56,Chinese,,0,0,0,,而在浮点数字中,你有舍入问题,你可能会丢掉不重要的数字
Dialogue: 0,0:14:42.78,0:14:46.68,English,,0,0,0,,You can also overflow floating point but the more common problem is roundoff
Dialogue: 0,0:14:42.78,0:14:46.68,Chinese,,0,0,0,,你同样也可以使浮点符号溢出,但更常见的问题是舍入
Dialogue: 0,0:14:48.98,0:14:54.04,English,,0,0,0,,So this is shown in this cartoon this idea of overflow of somebody counting sheep
Dialogue: 0,0:14:48.98,0:14:54.04,Chinese,,0,0,0,,所以这个动画片显示了这个有人算羊的溢出的想法
Dialogue: 0,0:14:54.72,0:14:59.02,English,,0,0,0,,Which in the U.S. is in English language at least a way to fall asleep
Dialogue: 0,0:14:54.72,0:14:59.02,Chinese,,0,0,0,,在美国用英语来说至少是一种入睡的方式
Dialogue: 0,0:14:59.68,0:15:05.02,English,,0,0,0,,And when he or she goes from 32,767
Dialogue: 0,0:14:59.68,0:15:05.02,Chinese,,0,0,0,,当他或她从 32,767 起
Dialogue: 0,0:15:05.48,0:15:10.52,English,,0,0,0,,And then increment set by one gets -32,768
Dialogue: 0,0:15:05.48,0:15:10.52,Chinese,,0,0,0,,然后增加一得到 -32,768
Dialogue: 0,0:15:10.92,0:15:18.18,English,,0,0,0,,And we'll see exactly why that happens but basically the numbers are going up to the larger value can represent
Dialogue: 0,0:15:10.92,0:15:18.18,Chinese,,0,0,0,,我们将看到为什么会发生这种情况,当这些数字会上升到能表示的极限最大值后
Dialogue: 0,0:15:18.18,0:15:20.50,English,,0,0,0,,And then when it goes one more it becomes a negative number
Dialogue: 0,0:15:18.18,0:15:20.50,Chinese,,0,0,0,,然后当它再加一后就会变成负数
Dialogue: 0,0:15:24.98,0:15:28.36,English,,0,0,0,,So these are really important under things to understand
Dialogue: 0,0:15:24.98,0:15:28.36,Chinese,,0,0,0,,所以这是一些不起眼但必须了解的事情
Dialogue: 0,0:15:28.36,0:15:34.54,English,,0,0,0,,I mean 90% of the time maybe you can just get by writing programs and not worrying about
Dialogue: 0,0:15:28.36,0:15:34.54,Chinese,,0,0,0,,我的意思是 90% 的时间,也许你可以通过编写程序而不必担心
Dialogue: 0,0:15:34.54,0:15:37.98,English,,0,0,0,,Whether your numbers are going to exceed their possible range
Dialogue: 0,0:15:34.54,0:15:37.98,Chinese,,0,0,0,,你的数字是否会超出其可能的范围
Dialogue: 0,0:15:38.50,0:15:45.40,English,,0,0,0,,But they sometimes when this could be really important if you're like you know controlling a rocket
Dialogue: 0,0:15:38.50,0:15:45.40,Chinese,,0,0,0,,但它们有时候可能非常重要,例如你正在控制一个火箭
Dialogue: 0,0:15:45.90,0:15:52.84,English,,0,0,0,,You really don't want the positive thrust to become negative or something like that
Dialogue: 0,0:15:45.90,0:15:52.84,Chinese,,0,0,0,,你真的不希望正向的推力成为负向或类似的东西
Dialogue: 0,0:15:53.00,0:15:57.24,English,,0,0,0,,So you can see you there this could be an important consideration
Dialogue: 0,0:15:53.00,0:15:57.24,Chinese,,0,0,0,,所以你可以看到某种情况下,这可能成为一个重要的考虑因素
Dialogue: 0,0:15:57.76,0:16:02.32,English,,0,0,0,,Similarly there's well-known instances of security vulnerabilities
Dialogue: 0,0:15:57.76,0:16:02.32,Chinese,,0,0,0,,同样存在众所周知的安全漏洞实例
Dialogue: 0,0:16:02.34,0:16:08.58,English,,0,0,0,,Where somebody wrote code that sort of expected a positive number in some place and
Dialogue: 0,0:16:02.34,0:16:08.58,Chinese,,0,0,0,,有人在某处写了那种预期为正数的代码,然后
Dialogue: 0,0:16:08.88,0:16:14.36,English,,0,0,0,,A clever person figured out if I supply a negative number I can fool the system and give it to do bad things
Dialogue: 0,0:16:08.88,0:16:14.36,Chinese,,0,0,0,,某个聪明人想知道是否可以通过输入了一个负数欺骗这个系统,并让它做坏事
Dialogue: 0,0:16:14.92,0:16:19.22,English,,0,0,0,,So these are the kind of corner cases that you need to understand better
Dialogue: 0,0:16:14.92,0:16:19.22,Chinese,,0,0,0,,所以这些都是你需要更好地理解的临界情况
Dialogue: 0,0:16:19.22,0:16:23.88,English,,0,0,0,,If you're either working in programs where it's really really important that it worked correctly
Dialogue: 0,0:16:19.22,0:16:23.88,Chinese,,0,0,0,,如果你正在开发一个非常非常需要运行正常的重要程序
Dialogue: 0,0:16:24.38,0:16:27.55,English,,0,0,0,,Or you're really worried about security vulnerabilities
Dialogue: 0,0:16:24.38,0:16:27.55,Chinese,,0,0,0,,或者你真的担心安全漏洞
Dialogue: 0,0:16:27.88,0:16:32.64,English,,0,0,0,,Anytime you have possible for corner cases you have to understand these nuances better
Dialogue: 0,0:16:27.88,0:16:32.64,Chinese,,0,0,0,,任何时候你有可能遇到临界状态的情况下,你必须更好地了解这些细微差别
Dialogue: 0,0:16:33.76,0:16:39.32,English,,0,0,0,,Similarly for floating-point if you're going to use floating-point for serious computation
Dialogue: 0,0:16:33.76,0:16:39.32,Chinese,,0,0,0,,对于浮点数类似的,如果你要使用浮点数进行严格的计算
Dialogue: 0,0:16:39.60,0:16:46.18,English,,0,0,0,,Whether it's scientific research or for designing bridges or nuclear power plants or something
Dialogue: 0,0:16:39.60,0:16:46.18,Chinese,,0,0,0,,无论是科学研究还是设计桥梁或核电站等等
Dialogue: 0,0:16:46.64,0:16:48.84,English,,0,0,0,,You better understand what the characteristics are
Dialogue: 0,0:16:46.64,0:16:48.84,Chinese,,0,0,0,,你最好理解这些特征是什么
Dialogue: 0,0:16:50.84,0:16:57.70,English,,0,0,0,,So that's our first one and we'll spend a couple weeks talking about numbers number of representations and their properties here
Dialogue: 0,0:16:50.84,0:16:57.70,Chinese,,0,0,0,,所以首先我们将在这里花费几个星期的时间讨论数字、数字的表示及其属性
Dialogue: 0,0:16:59.26,0:17:05.48,English,,0,0,0,,The second is we're going to spend a lot of time in this course learning about machine level programming meaning
Dialogue: 0,0:16:59.26,0:17:05.48,Chinese,,0,0,0,,第二步我们将花费大量的时间学习关于机器级编程的意义
Dialogue: 0,0:17:05.90,0:17:10.20,English,,0,0,0,,What the instructions are that actually get executed by the computer
Dialogue: 0,0:17:05.90,0:17:10.20,Chinese,,0,0,0,,这些指令实际上是由计算机执行的
Dialogue: 0,0:17:10.52,0:17:15.34,English,,0,0,0,,And that can be described in assembly language which is a text version of it
Dialogue: 0,0:17:10.52,0:17:15.34,Chinese,,0,0,0,,这可以用汇编语言来描述,汇编语言是指令的文本版本
Dialogue: 0,0:17:15.78,0:17:21.30,English,,0,0,0,,Or an object code which is the actual bit level binary encoding of instructions
Dialogue: 0,0:17:15.78,0:17:21.30,Chinese,,0,0,0,,或者是用目标代码来描述,也就是位级别的二进制编码的指令
Dialogue: 0,0:17:21.30,0:17:26.46,English,,0,0,0,,And we'll learn a fair bit about that and spend a fair amount of time seeing
Dialogue: 0,0:17:21.30,0:17:26.46,Chinese,,0,0,0,,我们将会学到一些相关知识并花费大量的时间来看待
Dialogue: 0,0:17:26.48,0:17:34.06,English,,0,0,0,,How code that you write in C gets turned into machine code and how that gets executed on the machine
Dialogue: 0,0:17:26.48,0:17:34.06,Chinese,,0,0,0,,你编写的 C 语言代码是如何变成机器码,以及如何在机器上执行的
Dialogue: 0,0:17:34.80,0:17:41.38,English,,0,0,0,,One thing I'll say is it historically courses like this would teach assembly code by having you write
Dialogue: 0,0:17:34.80,0:17:41.38,Chinese,,0,0,0,,我要说的一件事是在过去这种课程为了教你汇编代码会让你写
Dialogue: 0,0:17:41.68,0:17:47.69,English,,0,0,0,,programs in assembly that do various things not usually very interesting
Dialogue: 0,0:17:41.68,0:17:47.69,Chinese,,0,0,0,,各种不同的汇编程序,它们通常不是很有趣
Dialogue: 0,0:17:47.69,0:17:50.40,English,,0,0,0,,Because it's a lot of work to write assembly program
Dialogue: 0,0:17:47.69,0:17:50.40,Chinese,,0,0,0,,因为编写汇编程序需要很多工作
Dialogue: 0,0:17:50.80,0:17:55.18,English,,0,0,0,,This course is much more about taking the assembly code that's been generated by a compiler
Dialogue: 0,0:17:50.80,0:17:55.18,Chinese,,0,0,0,,本课程更多是关于如何获取编译器生成的汇编代码
Dialogue: 0,0:17:55.88,0:18:02.68,English,,0,0,0,,a C compiler and looking at it and understanding it that's a different set of skills than you need to write it on your own
Dialogue: 0,0:17:55.88,0:18:02.68,Chinese,,0,0,0,,一个 C 编译器,阅读它并理解它,这是一种与你能够自己写汇编所不同的能力
Dialogue: 0,0:18:05.88,0:18:11.10,English,,0,0,0,,In particular we're going to look at the language of of Intel processors
Dialogue: 0,0:18:05.88,0:18:11.10,Chinese,,0,0,0,,我们将特别关注英特尔处理器的汇编语言
Dialogue: 0,0:18:11.14,0:18:18.94,English,,0,0,0,,The most recent versions of them are called x86-64 the 64-bit version of their instruction set
Dialogue: 0,0:18:11.14,0:18:18.94,Chinese,,0,0,0,,它们的最新版本被称为 x86-64,指令集的 64 位版本
Dialogue: 0,0:18:19.36,0:18:23.21,English,,0,0,0,,And one thing that's new in this course compared to previous one
Dialogue: 0,0:18:19.36,0:18:23.21,Chinese,,0,0,0,,与之前的课程相比,这个课程中有一个新东西
Dialogue: 0,0:18:23.72,0:18:25.72,English,,0,0,0,,We used to teach 32-bit stuff
Dialogue: 0,0:18:23.72,0:18:25.72,Chinese,,0,0,0,,我们过去曾经教过 32 位的东西
Dialogue: 0,0:18:26.64,0:18:29.38,English,,0,0,0,,This course is 64 bits all the time
Dialogue: 0,0:18:26.64,0:18:29.38,Chinese,,0,0,0,,现在整个课程都是关于 64 位的
Dialogue: 0,0:18:32.76,0:18:39.76,English,,0,0,0,,Another one that we'll talk about a fair amount that is really fairly visible to programmers surprisingly visible is
Dialogue: 0,0:18:32.76,0:18:39.76,Chinese,,0,0,0,,另一个我们将讨论相当多的,对于编程者相当直观的内容
Dialogue: 0,0:18:40.10,0:18:45.28,English,,0,0,0,,It's aspects of the memory system so modern computers have a very complex
Dialogue: 0,0:18:40.10,0:18:45.28,Chinese,,0,0,0,,是内存系统的一些方面,所以现代计算机有一个非常复杂的
Dialogue: 0,0:18:45.58,0:18:52.80,English,,0,0,0,,layered memory system to try give you to hight performance in high capacity at the same time
Dialogue: 0,0:18:45.58,0:18:52.80,Chinese,,0,0,0,,分层存储的系统,试图同时给你高性能的表现和较大的储存容量
Dialogue: 0,0:18:53.22,0:18:58.12,English,,0,0,0,,And there's some results of that system that can mean that
Dialogue: 0,0:18:53.22,0:18:58.12,Chinese,,0,0,0,,使用这个系统的结果意味着
Dialogue: 0,0:18:58.18,0:19:01.42,English,,0,0,0,,If you program write a program well it might work really well
Dialogue: 0,0:18:58.18,0:19:01.42,Chinese,,0,0,0,,如果你的程序编写得很好,它可能运行得很好
Dialogue: 0,0:19:01.74,0:19:07.04,English,,0,0,0,,If you don't it could run very poorly because it's not making use of this hierarchical memory system
Dialogue: 0,0:19:01.74,0:19:07.04,Chinese,,0,0,0,,如果你不这样做,它可能会运行地非常糟糕,因为它没有利用这个分层存储系统
Dialogue: 0,0:19:07.74,0:19:12.96,English,,0,0,0,,So and also there's a lot of bugs that show up especially in C programs
Dialogue: 0,0:19:07.74,0:19:12.96,Chinese,,0,0,0,,还有很多 bug 尤其是在 C 程序中出现
Dialogue: 0,0:19:13.50,0:19:16.30,English,,0,0,0,,That have to do with memory referencing errors
Dialogue: 0,0:19:13.50,0:19:16.30,Chinese,,0,0,0,,这与内存引用错误有关
Dialogue: 0,0:19:16.54,0:19:23.34,English,,0,0,0,,So understanding what those errors are what their manifestation is how to prevent them as a big part of the course
Dialogue: 0,0:19:16.54,0:19:23.34,Chinese,,0,0,0,,所以搞清楚这些错误是什么,他们的表现是什么,如何防止它们是课程的重要组成部分
Dialogue: 0,0:19:24.44,0:19:32.86,English,,0,0,0,,So for example if I define a struct that contains a two integer values A in an array
Dialogue: 0,0:19:24.44,0:19:32.86,Chinese,,0,0,0,,因此,例如,如果我定义一个结构,其中 a 数组中包含两个整数值
Dialogue: 0,0:19:32.90,0:19:35.94,English,,0,0,0,,And a double precision floating point number d
Dialogue: 0,0:19:32.90,0:19:35.94,Chinese,,0,0,0,,还有 d 一个双精度浮点数
Dialogue: 0,0:19:36.30,0:19:43.94,English,,0,0,0,,And if I err this function fun() you'll see what it does is it's given an argument i
Dialogue: 0,0:19:36.30,0:19:43.94,Chinese,,0,0,0,,这个函数 fun( ),你会发现它的功能是给定一个参数 i
Dialogue: 0,0:19:44.26,0:19:49.10,English,,0,0,0,,And it sets the element of a to some strange-looking value
Dialogue: 0,0:19:44.26,0:19:49.10,Chinese,,0,0,0,,它将 a 的元素设置为一些奇怪的值
Dialogue: 0,0:19:50.00,0:19:58.56,English,,0,0,0,,So as you know I should really only be either 0 or 1 with this code
Dialogue: 0,0:19:50.00,0:19:58.56,Chinese,,0,0,0,,你知道 i 应该只能是 0 或 1
Dialogue: 0,0:19:58.58,0:20:03.44,English,,0,0,0,,Because that's the range of possible values of this array a
Dialogue: 0,0:19:58.58,0:20:03.44,Chinese,,0,0,0,,因为这是数组 a 的值的可能范围
Dialogue: 0,0:20:04.58,0:20:08.32,English,,0,0,0,,But we can try other things too so...
Dialogue: 0,0:20:04.58,0:20:08.32,Chinese,,0,0,0,,但我们也可以尝试其他的东西 ......
Dialogue: 0,0:20:09.38,0:20:15.78,English,,0,0,0,,In particular if you run it on either one or two you'll get what you'd expect
Dialogue: 0,0:20:09.38,0:20:15.78,Chinese,,0,0,0,,就像第一行或第二行那样运行程序,你会得到你所期望的
Dialogue: 0,0:20:16.18,0:20:21.38,English,,0,0,0,,That you assigned a 3.14 to element d of this structure
Dialogue: 0,0:20:16.18,0:20:21.38,Chinese,,0,0,0,,你给这个结构的元素 d 分配了 3.14
Dialogue: 0,0:20:22.10,0:20:24.90,English,,0,0,0,,And when you read it back you get the same thing
Dialogue: 0,0:20:22.10,0:20:24.90,Chinese,,0,0,0,,当你读回来时,你会得到同样的结果
Dialogue: 0,0:20:26.30,0:20:33.43,English,,0,0,0,,And in fact but now if I set a of two to this number
Dialogue: 0,0:20:26.30,0:20:33.43,Chinese,,0,0,0,,事实上,但现在如果我将这两个数字设置为这个数字 2
Dialogue: 0,0:20:33.43,0:20:36.48,English,,0,0,0,,All of a sudden you'll see that my floating number which
Dialogue: 0,0:20:33.43,0:20:36.48,Chinese,,0,0,0,,突然之间,你会看到我的浮点数
Dialogue: 0,0:20:37.34,0:20:40.32,English,,0,0,0,,seems to have nothing to do with a has changed
Dialogue: 0,0:20:37.34,0:20:40.32,Chinese,,0,0,0,,一个似乎与 a 无关的值发生了改变
Dialogue: 0,0:20:40.48,0:20:43.86,English,,0,0,0,,And if I do that same thing with...
Dialogue: 0,0:20:40.48,0:20:43.86,Chinese,,0,0,0,,如果我做同样的事情 ......
Dialogue: 0,0:20:44.40,0:20:49.32,English,,0,0,0,,I equal to three you'll see I get a number that's closer to two than to 3.14
Dialogue: 0,0:20:44.40,0:20:49.32,Chinese,,0,0,0,,i 等于 3,你会看到我得到的数字接近于 2,而不是 3.14
Dialogue: 0,0:20:51.10,0:20:52.34,English,,0,0,0,,And if I keep going
Dialogue: 0,0:20:51.10,0:20:52.34,Chinese,,0,0,0,,如果我继续进行下去
Dialogue: 0,0:20:53.88,0:21:04.82,English,,0,0,0,,Well nothing much happens util I hit (fun)(6) and then the program crashes
Dialogue: 0,0:20:53.88,0:21:04.82,Chinese,,0,0,0,,那么不会发生其他的变化,直到我调用 fun(6),然后程序崩溃
Dialogue: 0,0:21:05.42,0:21:10.66,English,,0,0,0,,So something interesting is going on here at least something quirky is going on
Dialogue: 0,0:21:05.42,0:21:10.66,Chinese,,0,0,0,,所以发生了一些有趣的事情,至少是一些奇怪的事情
Dialogue: 0,0:21:11.42,0:21:17.62,English,,0,0,0,,And the reason is again it has to do with how data is laid out in memory and
Dialogue: 0,0:21:11.42,0:21:17.62,Chinese,,0,0,0,,原因也与数据如何在内存中布局有关
Dialogue: 0,0:21:17.86,0:21:21.88,English,,0,0,0,,How its accessed and one of the features of C and C++
Dialogue: 0,0:21:17.86,0:21:21.88,Chinese,,0,0,0,,内存是如何访问的,和 C 和 C++ 的特性之一
Dialogue: 0,0:21:22.30,0:21:27.12,English,,0,0,0,,It doesn't do any bounds checking on a race it will happily let you reference
Dialogue: 0,0:21:22.30,0:21:27.12,Chinese,,0,0,0,,它不会在运行中做任何边界检查,它会很乐意让你访问
Dialogue: 0,0:21:27.58,0:21:33.14,English,,0,0,0,,element number five million of a two element array and not complain
Dialogue: 0,0:21:27.58,0:21:33.14,Chinese,,0,0,0,,元素下标为 500 万的仅有一或两个元素的数组,而不是抱怨
Dialogue: 0,0:21:33.24,0:21:36.36,English,,0,0,0,,But the operating system might complain as it did here
Dialogue: 0,0:21:33.24,0:21:36.36,Chinese,,0,0,0,,但操作系统可能会抱怨,因为它(访问越界)发生在这里面
Dialogue: 0,0:21:37.08,0:21:44.76,English,,0,0,0,,And it in this particular structure and we'll see more about how structures are implemented and weighed out
Dialogue: 0,0:21:37.08,0:21:44.76,Chinese,,0,0,0,,而且,在这个特定的结构中,我们将更多地了解结构是如何实现和排列的
Dialogue: 0,0:21:45.20,0:21:51.70,English,,0,0,0,,But basically the two if each of these uh blocks in this vertical chain represents four bytes
Dialogue: 0,0:21:45.20,0:21:51.70,Chinese,,0,0,0,,对于最下面的两个元素,垂直链中每个块代表 4 字节
Dialogue: 0,0:21:52.38,0:21:55.56,English,,0,0,0,,So the two elements of a each are four bytes
Dialogue: 0,0:21:52.38,0:21:55.56,Chinese,,0,0,0,,所以 a 的两个元素都是四个字节
Dialogue: 0,0:21:56.04,0:22:03.55,English,,0,0,0,,D is eight bytes and then there's some other stuff in the other beyond them
Dialogue: 0,0:21:56.04,0:22:03.55,Chinese,,0,0,0,,d 是八个字节,然后在它上面,此结构体与其它结构之间还有一些其他的东西
Dialogue: 0,0:22:04.22,0:22:06.78,English,,0,0,0,,That's not actually in the structured zone
Dialogue: 0,0:22:04.22,0:22:06.78,Chinese,,0,0,0,,并不在结构区域内部
Dialogue: 0,0:22:07.56,0:22:12.28,English,,0,0,0,,So you'll see that if I reference either a[0] or a[1]
Dialogue: 0,0:22:07.56,0:22:12.28,Chinese,,0,0,0,,所以你会看到,如果我引用 a[0] 或者 a[1]
Dialogue: 0,0:22:13.14,0:22:17.08,English,,0,0,0,,Then I will just modify that array as designed
Dialogue: 0,0:22:13.14,0:22:17.08,Chinese,,0,0,0,,然后我会按照设计好的修改该数组
Dialogue: 0,0:22:17.48,0:22:20.24,English,,0,0,0,,But when I'm calling fun(2) or fun(3)
Dialogue: 0,0:22:17.48,0:22:20.24,Chinese,,0,0,0,,但是当我调用 fun(2) 或者 fun(3)
Dialogue: 0,0:22:20.24,0:22:26.28,English,,0,0,0,,What I'm actually doing is altering the bytes that encode this number 'd'
Dialogue: 0,0:22:20.24,0:22:26.28,Chinese,,0,0,0,,我实际上做的是改变这个浮点数 d 的字节
Dialogue: 0,0:22:26.54,0:22:29.60,English,,0,0,0,,And that's why you saw the sort of funny numbers come out it
Dialogue: 0,0:22:26.54,0:22:29.60,Chinese,,0,0,0,,这就是为什么你看到这种有趣的数字出来
Dialogue: 0,0:22:29.90,0:22:32.72,English,,0,0,0,,And then I go up at some point when I hit 6
Dialogue: 0,0:22:29.90,0:22:32.72,Chinese,,0,0,0,,当我上升中遇到了某个点,当输入 6 时
Dialogue: 0,0:22:32.74,0:22:36.04,English,,0,0,0,,I'm modifying some state of the program that
Dialogue: 0,0:22:32.74,0:22:36.04,Chinese,,0,0,0,,我修改了该程序的某些状态
Dialogue: 0,0:22:36.04,0:22:43.60,English,,0,0,0,,It's using to kind of keep things organized most likely how it keeps track of allocated memory
Dialogue: 0,0:22:36.04,0:22:43.60,Chinese,,0,0,0,,它被用于维持程序运行,最有可能是记录已经分配的内存
Dialogue: 0,0:22:44.18,0:22:46.72,English,,0,0,0,,And that's causing the program to crash
Dialogue: 0,0:22:44.18,0:22:46.72,Chinese,,0,0,0,,这就导致了程序崩溃
Dialogue: 0,0:22:47.76,0:22:53.72,English,,0,0,0,,So this is a pretty good demonstration of a why C programming can drive you crazy
Dialogue: 0,0:22:47.76,0:22:53.72,Chinese,,0,0,0,,所以这是一个很好的演示,说明为什么 C 编程会让你疯狂
Dialogue: 0,0:22:54.52,0:23:02.04,English,,0,0,0,,Because as you saw it doesn't do bounds checking so it's easy to write code that does invalid stuff
Dialogue: 0,0:22:54.52,0:23:02.04,Chinese,,0,0,0,,因为正如你所看到的那样,它不会执行边界检查,所以很容易编写出非法的代码
Dialogue: 0,0:23:04.18,0:23:12.00,English,,0,0,0,,It's also often the case that you'll cause some problem and it has a sort of action a distance feature that
Dialogue: 0,0:23:04.18,0:23:12.00,Chinese,,0,0,0,,通常情况下,你会导致一些问题,这些问题拥有一种远距离的特性
Dialogue: 0,0:23:12.00,0:23:16.50,English,,0,0,0,,You can modify some think you're modifying some data structure
Dialogue: 0,0:23:12.00,0:23:16.50,Chinese,,0,0,0,,你认为是对某个数据结构进行了修改
Dialogue: 0,0:23:16.92,0:23:20.24,English,,0,0,0,,And what you're doing because of the way things are organized in memory
Dialogue: 0,0:23:16.92,0:23:20.24,Chinese,,0,0,0,,而你这样做的原因是因为事物在内存中的排列方式
Dialogue: 0,0:23:20.58,0:23:23.70,English,,0,0,0,,You're changing something totally unrelated somewhere else in the program
Dialogue: 0,0:23:20.58,0:23:23.70,Chinese,,0,0,0,,其实你改变了与程序中,某个其他地方的完全无关的东西
Dialogue: 0,0:23:24.72,0:23:26.96,English,,0,0,0,,You'd imagine they're not just one apart but they're 10,000 apart
Dialogue: 0,0:23:24.72,0:23:26.96,Chinese,,0,0,0,,你可以想象它们不只是分开了,而且它们相隔万里
Dialogue: 0,0:23:28.42,0:23:33.04,English,,0,0,0,,And things might just run fine for hours days or weeks
Dialogue: 0,0:23:28.42,0:23:33.04,Chinese,,0,0,0,,而且可能会在几天或几周内程序运行良好
Dialogue: 0,0:23:33.68,0:23:37.78,English,,0,0,0,,And then always say at some point that data that got corrupted
Dialogue: 0,0:23:33.68,0:23:37.78,Chinese,,0,0,0,,然后总是说在某些时候数据被损坏了
Dialogue: 0,0:23:38.14,0:23:42.34,English,,0,0,0,,A long time ago gets accessed and something goes wrong
Dialogue: 0,0:23:38.14,0:23:42.34,Chinese,,0,0,0,,很久以前被访问并且产生错误
Dialogue: 0,0:23:42.64,0:23:47.17,English,,0,0,0,,So this can be some of the worst nightmare debugging nightmares
Dialogue: 0,0:23:42.64,0:23:47.17,Chinese,,0,0,0,,所以这可能是最可怕的调试噩梦
Dialogue: 0,0:23:47.17,0:23:50.92,English,,0,0,0,,that exists on earth is to try and figure out memory referencing errors
Dialogue: 0,0:23:47.17,0:23:50.92,Chinese,,0,0,0,,在地球上存在的最可怕的噩梦,是试图找出内存引用错误
Dialogue: 0,0:23:54.90,0:23:59.66,English,,0,0,0,,So this is actually one argument not to program in C or C++
Dialogue: 0,0:23:54.90,0:23:59.66,Chinese,,0,0,0,,所以这实际上是一个不要用 C 或 C++ 编程的辩论的论据
Dialogue: 0,0:24:00.42,0:24:02.48,English,,0,0,0,,And it's a valid argument all admitted
Dialogue: 0,0:24:00.42,0:24:02.48,Chinese,,0,0,0,,这是一个有效的论据,我承认
Dialogue: 0,0:24:02.84,0:24:07.02,English,,0,0,0,,But also as a person who's right in a lot of C programming
Dialogue: 0,0:24:02.84,0:24:07.02,Chinese,,0,0,0,,而且作为一个在很多 C 编程中都是正确的人
Dialogue: 0,0:24:07.06,0:24:13.62,English,,0,0,0,,You just get more experienced and you know at times that you should actually put bounds checking in your own code
Dialogue: 0,0:24:07.06,0:24:13.62,Chinese,,0,0,0,,你只是得到更多的经验,你知道有时你应该在你自己的代码中进行边界检查
Dialogue: 0,0:24:13.80,0:24:21.34,English,,0,0,0,,And there's also tools available that will help you sort of bullet proof your code
Dialogue: 0,0:24:13.80,0:24:21.34,Chinese,,0,0,0,,还有一些工具可以帮助你对代码进行「防弹测试」
Dialogue: 0,0:24:21.34,0:24:23.34,English,,0,0,0,,So that it will detect these kind of problems
Dialogue: 0,0:24:21.34,0:24:23.34,Chinese,,0,0,0,,它会检测到这些问题
Dialogue: 0,0:24:24.12,0:24:28.33,English,,0,0,0,,So it's not like you have to change languages but it is a particular feature of these languages
Dialogue: 0,0:24:24.12,0:24:28.33,Chinese,,0,0,0,,所以你不必改变编程的语言,这些缺点是这些语言的一个特点
Dialogue: 0,0:24:30.72,0:24:38.20,English,,0,0,0,,So understanding sort of the machine-level representation of data structures how they work really make a huge difference
Dialogue: 0,0:24:30.72,0:24:38.20,Chinese,,0,0,0,,因此,理解数据结构的机器级别表示以及它们如何运行对于
Dialogue: 0,0:24:38.22,0:24:41.82,English,,0,0,0,,in your ability to deal with these kind of vulnerabilities
Dialogue: 0,0:24:38.22,0:24:41.82,Chinese,,0,0,0,,你处理这些漏洞的能力十分重要
Dialogue: 0,0:24:43.18,0:24:45.74,English,,0,0,0,,Vulnerabilities by the way also from a security perspective
Dialogue: 0,0:24:43.18,0:24:45.74,Chinese,,0,0,0,,漏洞,是从安全角度来看待的
Dialogue: 0,0:24:50.38,0:24:55.64,English,,0,0,0,,The fourth sort of theme we'll cover in the courses getting performance out of programs
Dialogue: 0,0:24:50.38,0:24:55.64,Chinese,,0,0,0,,课程的第四个主题是,从程序角度增加它们的性能
Dialogue: 0,0:24:56.18,0:24:58.70,English,,0,0,0,,Other parts of the curriculum in CS
Dialogue: 0,0:24:56.18,0:24:58.70,Chinese,,0,0,0,,CS 中课程的其他部分
Dialogue: 0,0:24:59.10,0:25:02.84,English,,0,0,0,,do much more emphasis on getting the right algorithm at the right data structure
Dialogue: 0,0:24:59.10,0:25:02.84,Chinese,,0,0,0,,更多地强调在正确的数据结构中获得正确的算法
Dialogue: 0,0:25:03.40,0:25:06.78,English,,0,0,0,,And that's really well and good it's important stuff I don't deny it
Dialogue: 0,0:25:03.40,0:25:06.78,Chinese,,0,0,0,,这真的很好,很重要,我不否认它
Dialogue: 0,0:25:07.16,0:25:13.58,English,,0,0,0,,But they some amount of the sort of low-level optimization that you need to do
Dialogue: 0,0:25:07.16,0:25:13.58,Chinese,,0,0,0,,但是他们之中某些需要进行一些底层优化
Dialogue: 0,0:25:14.02,0:25:17.42,English,,0,0,0,,That you need to understand what the system does
Dialogue: 0,0:25:14.02,0:25:17.42,Chinese,,0,0,0,,你需要了解系统的运行规律
Dialogue: 0,0:25:17.68,0:25:20.14,English,,0,0,0,,What makes it run well what makes it run poorly
Dialogue: 0,0:25:17.68,0:25:20.14,Chinese,,0,0,0,,是什么让它运行得很好,是什么让它运行不佳
Dialogue: 0,0:25:20.50,0:25:22.68,English,,0,0,0,,In order to be able to do that kind of optimization
Dialogue: 0,0:25:20.50,0:25:22.68,Chinese,,0,0,0,,为了能够做到这种优化
Dialogue: 0,0:25:23.72,0:25:25.98,English,,0,0,0,,So the example we like to use is
Dialogue: 0,0:25:23.72,0:25:25.98,Chinese,,0,0,0,,所以我们喜欢使用的例子是
Dialogue: 0,0:25:27.24,0:25:33.90,English,,0,0,0,,These two functions do exactly the same thing in terms of their...their behavior
Dialogue: 0,0:25:27.24,0:25:33.90,Chinese,,0,0,0,,这两个函数在他们的行为方面完全一样
Dialogue: 0,0:25:34.28,0:25:45.32,English,,0,0,0,,What they do is copy a matrix or array from called source 'src' to a destination 'dst'
Dialogue: 0,0:25:34.28,0:25:45.32,Chinese,,0,0,0,,他们所做的是将一个矩阵或数组从源地址 src 复制到目标地址 dst
Dialogue: 0,0:25:45.68,0:25:53.34,English,,0,0,0,,They're both size to be 2048 rows 2048 columns two-dimensional arrays
Dialogue: 0,0:25:45.68,0:25:53.34,Chinese,,0,0,0,,它们的大小都是 2048 行 2048 列的二维数组
Dialogue: 0,0:25:54.10,0:26:00.76,English,,0,0,0,,And you'll see that the program's do the obvious thing you have a nested pair of loops to do the row and column indices
Dialogue: 0,0:25:54.10,0:26:00.76,Chinese,,0,0,0,,你会看到程序做了显而易见的事情,你有一对嵌套的循环来做行列索引
Dialogue: 0,0:26:01.12,0:26:05.72,English,,0,0,0,,And you just copy from one source element to a destination element
Dialogue: 0,0:26:01.12,0:26:05.72,Chinese,,0,0,0,,而你只需从一个一个将源地址元素复制到目标地址的元素
Dialogue: 0,0:26:06.26,0:26:11.74,English,,0,0,0,,The only thing that's different you'll see is that the two loops
Dialogue: 0,0:26:06.26,0:26:11.74,Chinese,,0,0,0,,唯一不同的是,这两个循环
Dialogue: 0,0:26:11.74,0:26:15.45,English,,0,0,0,,Their nesting is different the nesting order is different
Dialogue: 0,0:26:11.74,0:26:15.45,Chinese,,0,0,0,,它们的嵌套顺序不同,嵌套顺序不同
Dialogue: 0,0:26:15.45,0:26:19.10,English,,0,0,0,,One case I'm going kind of row first
Dialogue: 0,0:26:15.45,0:26:19.10,Chinese,,0,0,0,,有一种情况我会,行优先
Dialogue: 0,0:26:21.30,0:26:25.86,English,,0,0,0,,going through all the rows and then the columns and the other is for any given row
Dialogue: 0,0:26:21.30,0:26:25.86,Chinese,,0,0,0,,外循环遍历行,内循环遍历列。另一种是先遍历列,再遍历行拷贝
Dialogue: 0,0:26:26.12,0:26:29.90,English,,0,0,0,,I'm copying all the columns that's really the only difference between these two programs
Dialogue: 0,0:26:26.12,0:26:29.90,Chinese,,0,0,0,,这是两个程序之间唯一的区别
Dialogue: 0,0:26:31.18,0:26:34.06,English,,0,0,0,,But what you'll find if you run it on a typical system
Dialogue: 0,0:26:31.18,0:26:34.06,Chinese,,0,0,0,,但是如果你在普通的系统上运行它,你会发现
Dialogue: 0,0:26:34.68,0:26:37.10,English,,0,0,0,,It's that one is much faster than the other
Dialogue: 0,0:26:34.68,0:26:37.10,Chinese,,0,0,0,,第一个比另一个快得多
Dialogue: 0,0:26:37.10,0:26:43.48,English,,0,0,0,,In this particular machine we ran it on it was about close to 20 times difference in performance
Dialogue: 0,0:26:37.10,0:26:43.48,Chinese,,0,0,0,,在这台特定的机器上,我们运行它的性能差不多有 20 倍
Dialogue: 0,0:26:43.48,0:26:52.32,English,,0,0,0,,So something fishy is going on if the same program that differs only in this seemingly insignificant way
Dialogue: 0,0:26:43.48,0:26:52.32,Chinese,,0,0,0,,仅有这种看似不痛不痒的区别,两个完全相同的程序,运行起来却发生了相当诡异的事情
Dialogue: 0,0:26:52.34,0:26:57.88,English,,0,0,0,,A way that has no effect whatsoever on its functionality can have this much performance difference
Dialogue: 0,0:26:52.34,0:26:57.88,Chinese,,0,0,0,,一种对其功能没有任何影响的修改,可以产生这么大的性能差异
Dialogue: 0,0:26:58.62,0:27:03.14,English,,0,0,0,,And so to understand this you need to stare at the cover of the book
Dialogue: 0,0:26:58.62,0:27:03.14,Chinese,,0,0,0,,所以要了解这一点,你需要盯着书的封面
Dialogue: 0,0:27:07.74,0:27:16.00,English,,0,0,0,,Because basically you're two different points of this strange-looking picture that's on your book
Dialogue: 0,0:27:07.74,0:27:16.00,Chinese,,0,0,0,,因为基本上你是在书上这张奇怪图片的两个不同点
Dialogue: 0,0:27:16.04,0:27:20.12,English,,0,0,0,,And since there's no axis or labels on it it makes no sense whatsoever
Dialogue: 0,0:27:16.04,0:27:20.12,Chinese,,0,0,0,,由于封面图没有轴或单位,所以它没有任何意义
Dialogue: 0,0:27:20.76,0:27:21.74,English,,0,0,0,,But it's there
Dialogue: 0,0:27:20.76,0:27:21.74,Chinese,,0,0,0,,但它在那里
Dialogue: 0,0:27:23.06,0:27:28.60,English,,0,0,0,,So what you see is this picture shows four different memory access patterns I won't go into the details
Dialogue: 0,0:27:23.06,0:27:28.60,Chinese,,0,0,0,,你看到的是这张图片显示了四种不同的内存访问模式,我在这里不会详细讨论
Dialogue: 0,0:27:29.42,0:27:37.86,English,,0,0,0,,What the throughput measured in megabytes per second on basically a copying program was
Dialogue: 0,0:27:29.42,0:27:37.86,Chinese,,0,0,0,,基本上复制程序的吞吐量是以兆字节/秒为单位的
Dialogue: 0,0:27:38.70,0:27:41.46,English,,0,0,0,,And without going into the details what you'll see is
Dialogue: 0,0:27:38.70,0:27:41.46,Chinese,,0,0,0,,不深入细节,你看到的是
Dialogue: 0,0:27:41.86,0:27:46.42,English,,0,0,0,,These two functions sort of sit at different points in this memory access pattern
Dialogue: 0,0:27:41.86,0:27:46.42,Chinese,,0,0,0,,这两个函数在这个内存访问模式中位于不同的位置
Dialogue: 0,0:27:46.84,0:27:52.04,English,,0,0,0,,The one that goes through a row by row is much better than the one that goes through column by column
Dialogue: 0,0:27:46.84,0:27:52.04,Chinese,,0,0,0,,一行接一行方法比一列接一列的访问方法要好得多
Dialogue: 0,0:27:53.94,0:28:00.62,English,,0,0,0,,And as a result you're getting a lot better performance and it has to do with this memory hierarchy and what they call the cache memories
Dialogue: 0,0:27:53.94,0:28:00.62,Chinese,,0,0,0,,结果是,你获得了更好的性能,它和内存层次结构中的缓存有关
Dialogue: 0,0:28:01.22,0:28:06.40,English,,0,0,0,,That you're getting way better performance out of it in one case than the other
Dialogue: 0,0:28:01.22,0:28:06.40,Chinese,,0,0,0,,在某种情况下你获得了比其他方式性能高得多的方法
Dialogue: 0,0:28:06.72,0:28:11.56,English,,0,0,0,,So that's explains what the cover of the book is about
Dialogue: 0,0:28:06.72,0:28:11.56,Chinese,,0,0,0,,所以这就解释了本书封面的内容
Dialogue: 0,0:28:11.82,0:28:13.88,English,,0,0,0,,We'll talk about it more later in the course
Dialogue: 0,0:28:11.82,0:28:13.88,Chinese,,0,0,0,,我们稍后会在课程中深入讨论它
Dialogue: 0,0:28:15.40,0:28:21.76,English,,0,0,0,,And then a final part of the course talks more about not just getting computers to run little programs in isolation
Dialogue: 0,0:28:15.40,0:28:21.76,Chinese,,0,0,0,,然后,课程的最后一部分将更多地讨论不仅让计算机孤立运行小程序
Dialogue: 0,0:28:21.76,0:28:28.76,English,,0,0,0,,But getting computers that talk to each other over networks implement services like web servers
Dialogue: 0,0:28:21.76,0:28:28.76,Chinese,,0,0,0,,而且能够通过网络获取彼此交谈,实现像 Web 服务器这样的服务
Dialogue: 0,0:28:28.92,0:28:34.96,English,,0,0,0,,And other functions like that which of course is where most of the world of computing sits today
Dialogue: 0,0:28:28.92,0:28:34.96,Chinese,,0,0,0,,和其他功能,就像目前世界上大多数计算机一样
Dialogue: 0,0:28:34.96,0:28:41.26,English,,0,0,0,,It's not just isolated machines but computers they internet with each other over the networks
Dialogue: 0,0:28:34.96,0:28:41.26,Chinese,,0,0,0,,它不仅仅是孤立的机器,而是通过网络彼此互联的计算机
Dialogue: 0,0:28:41.26,0:28:45.92,English,,0,0,0,,They're embedded controllers that are interacting with the physical world
Dialogue: 0,0:28:41.26,0:28:45.92,Chinese,,0,0,0,,它们是与物理世界交互的嵌入式控制器
Dialogue: 0,0:28:45.92,0:28:50.16,English,,0,0,0,,So really the the world of computers is a much richer environment
Dialogue: 0,0:28:45.92,0:28:50.16,Chinese,,0,0,0,,所以电脑世界真的是一个更加丰富的环境
Dialogue: 0,0:28:50.42,0:28:54.26,English,,0,0,0,,And we'll cover at least some aspects of that in the final part of this course
Dialogue: 0,0:28:50.42,0:28:54.26,Chinese,,0,0,0,,我们将在本课程的最后部分稍微介绍一点那些方面
Dialogue: 0,0:28:58.22,0:29:02.22,English,,0,0,0,,So as I mentioned the other feature of this course
Dialogue: 0,0:28:58.22,0:29:02.22,Chinese,,0,0,0,,所以我提到了这门课的另一个特点
Dialogue: 0,0:29:02.24,0:29:06.16,English,,0,0,0,,It will get you ready for other systems courses you might take at CMU
Dialogue: 0,0:29:02.24,0:29:06.16,Chinese,,0,0,0,,它将帮助你做好你可能在 CMU 学习的其他系统性课程的准备
Dialogue: 0,0:29:06.44,0:29:14.08,English,,0,0,0,,And here we've listed actually a subset of the courses at the university that require this course is a prerequisite
Dialogue: 0,0:29:06.44,0:29:14.08,Chinese,,0,0,0,,在这里,我们已经列出了大学中需要本课程作为基础的一部分课程
Dialogue: 0,0:29:14.48,0:29:18.82,English,,0,0,0,,And they're mostly in computer science and ECE
Dialogue: 0,0:29:14.48,0:29:18.82,Chinese,,0,0,0,,他们主要是计算机科学和电子计算机工程课程
Dialogue: 0,0:29:19.08,0:29:23.18,English,,0,0,0,,But you'll see it's quite a range of different courses
Dialogue: 0,0:29:19.08,0:29:23.18,Chinese,,0,0,0,,但是你会看到这是一系列不同的课程
Dialogue: 0,0:29:23.72,0:29:31.22,English,,0,0,0,,And each of them builds on to one or multiple aspects of the material you learn in the course
Dialogue: 0,0:29:23.72,0:29:31.22,Chinese,,0,0,0,,并且它们每一个都基于你在课程中学习的内容的一个或多个方面
Dialogue: 0,0:29:31.88,0:29:37.70,English,,0,0,0,,So the reason why we make everyone take this course including incoming master's students
Dialogue: 0,0:29:31.88,0:29:37.70,Chinese,,0,0,0,,所以这就是我们为什么要让每个人都参加这门课程,包括刚入学的硕士生
Dialogue: 0,0:29:38.28,0:29:44.70,English,,0,0,0,,It's that all these other courses at the university have come to rely on students being familiar
Dialogue: 0,0:29:38.28,0:29:44.70,Chinese,,0,0,0,,就是这所大学的其他所有课程都依赖于学生熟悉本课程
Dialogue: 0,0:29:45.10,0:29:51.42,English,,0,0,0,,and having done the work of 213 or 513 as a prerequisite
Dialogue: 0,0:29:45.10,0:29:51.42,Chinese,,0,0,0,,和 213 或 513 课程为前提
Dialogue: 0,0:29:51.42,0:29:57.84,English,,0,0,0,,And they can build on that material and sort of cover more ground as a result rather than having to do
Dialogue: 0,0:29:51.42,0:29:57.84,Chinese,,0,0,0,,而且它们可以基于内容进行深入,并覆盖更多领域,而不是面面俱到
Dialogue: 0,0:29:58.04,0:30:01.20,English,,0,0,0,,What would otherwise be somewhat remedial work on it
Dialogue: 0,0:29:58.04,0:30:01.20,Chinese,,0,0,0,,这些内容需要额外地工作来补充
Dialogue: 0,0:30:01.22,0:30:08.94,English,,0,0,0,,And in fact one of the part of the genesis of this course was the people who taught the operating system course a 410
Dialogue: 0,0:30:01.22,0:30:08.94,Chinese,,0,0,0,,事实上,这门课的一部分发起人来自操作系统课程 410
Dialogue: 0,0:30:10.04,0:30:15.84,English,,0,0,0,,Sort of complained that they were spending too much time at the beginning of the course talking about some very basics of machine programming
Dialogue: 0,0:30:10.04,0:30:15.84,Chinese,,0,0,0,,他们抱怨说,他们在课程开始时,花费太多时间讨论一些非常基本的机器编程
Dialogue: 0,0:30:16.44,0:30:20.16,English,,0,0,0,,And Dave and I said oh well we can cover that
Dialogue: 0,0:30:16.44,0:30:20.16,Chinese,,0,0,0,,Dave 和我说,那好我们来教这部分
Dialogue: 0,0:30:20.26,0:30:22.82,English,,0,0,0,,So that was part of what got this course started
Dialogue: 0,0:30:20.26,0:30:22.82,Chinese,,0,0,0,,所以这是这门课程开始的起源部分
Dialogue: 0,0:30:25.16,0:30:31.78,English,,0,0,0,,I mentioned that the course has a sort of perspective that's very different from traditional systems course
Dialogue: 0,0:30:25.16,0:30:31.78,Chinese,,0,0,0,,此课程有一种与传统系统性课程非常不同的观点
Dialogue: 0,0:30:31.98,0:30:35.90,English,,0,0,0,,Most systems courses including that whole array you saw there
Dialogue: 0,0:30:31.98,0:30:35.90,Chinese,,0,0,0,,大多数系统课程包括你在那里看到的整个课时列表
Dialogue: 0,0:30:35.96,0:30:41.82,English,,0,0,0,,we're about how do I build some particular feature,how do I implement an operating system
Dialogue: 0,0:30:35.96,0:30:41.82,Chinese,,0,0,0,,我们关注于如何构建一些特定功能,如何实现操作系统
Dialogue: 0,0:30:42.02,0:30:44.60,English,,0,0,0,,How do I design a pipeline microprocessor?
Dialogue: 0,0:30:42.02,0:30:44.60,Chinese,,0,0,0,,我如何设计流水线微处理器?
Dialogue: 0,0:30:46.06,0:30:48.92,English,,0,0,0,,And those it's all important stuff to know
Dialogue: 0,0:30:46.06,0:30:48.92,Chinese,,0,0,0,,那些都是重要的知识
Dialogue: 0,0:30:49.06,0:30:56.00,English,,0,0,0,,We really want the people who are out there building operating systems and designing microprocessors to learn how to do it
Dialogue: 0,0:30:49.06,0:30:56.00,Chinese,,0,0,0,,我们真的希望那些致力于建立操作系统和设计微处理器的人学习如何去做它
Dialogue: 0,0:30:57.50,0:31:02.30,English,,0,0,0,,On the other hand is a way to sort of get new into this and get the introduction and get the experience
Dialogue: 0,0:30:57.50,0:31:02.30,Chinese,,0,0,0,,另一种方法是向介绍这些新东西给学生,让学生接触使用它们,并获得经验
Dialogue: 0,0:31:02.84,0:31:06.44,English,,0,0,0,,We find it more useful to take what we call a programmers perspective
Dialogue: 0,0:31:02.84,0:31:06.44,Chinese,,0,0,0,,我们发现采用我们所谓的程序员视角更有用
Dialogue: 0,0:31:07.14,0:31:17.36,English,,0,0,0,,meaning understanding what you as a person who sits in front of a computer screen types code
Dialogue: 0,0:31:07.14,0:31:17.36,Chinese,,0,0,0,,意思是作为一个坐在电脑屏幕前输入代码的程序员去理解
Dialogue: 0,0:31:17.56,0:31:22.56,English,,0,0,0,,I need to know about that machine you're typing code for in order to be effective at doing it
Dialogue: 0,0:31:17.56,0:31:22.56,Chinese,,0,0,0,,为了执行有效的操作,你需要了解你正在输入代码的机器
Dialogue: 0,0:31:23.12,0:31:28.46,English,,0,0,0,,As opposed to somebody who some day going to be designing the the actual machine itself
Dialogue: 0,0:31:23.12,0:31:28.46,Chinese,,0,0,0,,和那些有一天会去设计真正的机器本身的人不同
Dialogue: 0,0:31:28.96,0:31:34.64,English,,0,0,0,,So that by taking that perspective it gives you sort of an understanding
Dialogue: 0,0:31:28.96,0:31:34.64,Chinese,,0,0,0,,所以通过遵守这种观点,它给你一种见解
Dialogue: 0,0:31:34.68,0:31:38.52,English,,0,0,0,,So now when you go off to implement it you'll actually know what these features are
Dialogue: 0,0:31:34.68,0:31:38.52,Chinese,,0,0,0,,所以现在当你着手去实现某种功能时,你会知道计算机的特性是什么
Dialogue: 0,0:31:38.52,0:31:41.44,English,,0,0,0,,Why it's important to implement them well
Dialogue: 0,0:31:38.52,0:31:41.44,Chinese,,0,0,0,,为什么很好地依据计算机特性很重要
Dialogue: 0,0:31:41.74,0:31:45.44,English,,0,0,0,,But also that's by doing this programmers perspective
Dialogue: 0,0:31:41.74,0:31:45.44,Chinese,,0,0,0,,与此同时,通过这个程序员的视角
Dialogue: 0,0:31:45.46,0:31:49.90,English,,0,0,0,,It lets you right away get tools that you can use in other places
Dialogue: 0,0:31:45.46,0:31:49.90,Chinese,,0,0,0,,它立即让你获得可以在其他地方会用到的工具
Dialogue: 0,0:31:49.90,0:31:55.24,English,,0,0,0,,Where you're writing programs are doing anything related to it and be more effective at that
Dialogue: 0,0:31:49.90,0:31:55.24,Chinese,,0,0,0,,编写程序或者是任何相关的工作,会使得它们更有效
Dialogue: 0,0:31:55.44,0:32:01.84,English,,0,0,0,,So this programmers perspective really gives this this dual benefit to it
Dialogue: 0,0:31:55.44,0:32:01.84,Chinese,,0,0,0,,所以这个程序员的观点确实给了它这个双重好处
Dialogue: 0,0:32:02.72,0:32:08.32,English,,0,0,0,,We feel is very useful and students who've taken the course in the past have expressed that as well
Dialogue: 0,0:32:02.72,0:32:08.32,Chinese,,0,0,0,,我们觉得这很有用,而过去参加过这项课程的学生也表示了这一点
Dialogue: 0,0:32:09.52,0:32:14.30,English,,0,0,0,,So as I mentioned we have two instructors for the course
Dialogue: 0,0:32:09.52,0:32:14.30,Chinese,,0,0,0,,所以正如我所提到的,这个课程我们有两名讲师
Dialogue: 0,0:32:15.32,0:32:17.48,English,,0,0,0,,And they also happen to be authors
Dialogue: 0,0:32:15.32,0:32:17.48,Chinese,,0,0,0,,他们也碰巧是作者
Dialogue: 0,0:32:17.72,0:32:23.66,English,,0,0,0,,The longest,we've probably taught this course more than anyone else
Dialogue: 0,0:32:17.72,0:32:23.66,Chinese,,0,0,0,,我们应该是教授这门课时间最长的讲师了
Dialogue: 0,0:32:23.66,0:32:26.66,English,,0,0,0,, But it's also taught by other people on campus as well
Dialogue: 0,0:32:23.66,0:32:26.66,Chinese,,0,0,0,,但它同时也由校内其他人讲授
Dialogue: 0,0:32:27.70,0:32:32.98,English,,0,0,0,,So what I'm going to do now is hand my pair of microphones to Dave
Dialogue: 0,0:32:27.70,0:32:32.98,Chinese,,0,0,0,,所以我现在要做的是把麦克风交给 Dave
Dialogue: 0,0:32:34.55,0:32:38.02,English,,0,0,0,,All right welcome good afternoon it's great to see you
Dialogue: 0,0:32:34.55,0:32:38.02,Chinese,,0,0,0,,好的,下午好,很高兴见到你们
Dialogue: 0,0:32:38.02,0:32:40.02,English,,0,0,0,,My name is Dave O'Halloran
Dialogue: 0,0:32:38.02,0:32:40.02,Chinese,,0,0,0,,我叫 Dave O'Halloran
Dialogue: 0,0:32:40.56,0:32:48.12,English,,0,0,0,,And I'm just delighted to have the opportunity to be one of your instructors this term
Dialogue: 0,0:32:40.56,0:32:48.12,Chinese,,0,0,0,,而且我很高兴有机会成为你这个学期的导师之一
Dialogue: 0,0:32:49.98,0:32:56.24,English,,0,0,0,,This course is one of the reason I'm so excited to be teaching
Dialogue: 0,0:32:49.98,0:32:56.24,Chinese,,0,0,0,,这门课是我对于教学很兴奋的原因之一
Dialogue: 0,0:32:56.24,0:32:58.16,English,,0,0,0,,I just love this course
Dialogue: 0,0:32:56.24,0:32:58.16,Chinese,,0,0,0,,我只是非常喜欢这个课程
Dialogue: 0,0:32:58.72,0:33:04.74,English,,0,0,0,,The real the reason is the the opportunity of represents to have an impact on people's lives
Dialogue: 0,0:32:58.72,0:33:04.74,Chinese,,0,0,0,,真正的原因是它具有对人的一生产生影响的机会
Dialogue: 0,0:33:05.12,0:33:07.68,English,,0,0,0,,We really believe that the material you learned this semester
Dialogue: 0,0:33:05.12,0:33:07.68,Chinese,,0,0,0,,我们真的相信你在这个学期学到的知识
Dialogue: 0,0:33:08.28,0:33:13.38,English,,0,0,0,,can have a really positive and long-lasting impact on on your careers
Dialogue: 0,0:33:08.28,0:33:13.38,Chinese,,0,0,0,,可以对你的事业产生真正的积极和持久的影响
Dialogue: 0,0:33:14.12,0:33:19.88,English,,0,0,0,,And it'll help you not only with your future classes but also future positions you have
Dialogue: 0,0:33:14.12,0:33:19.88,Chinese,,0,0,0,,它不仅可以帮助你学习未来的课程,还可以帮助你掌握未来的职位
Dialogue: 0,0:33:20.64,0:33:27.16,English,,0,0,0,,And I hear this from people all all the time from CMU students
Dialogue: 0,0:33:20.64,0:33:27.16,Chinese,,0,0,0,,我总是从 CMU 的学生那里听到这种反馈
Dialogue: 0,0:33:27.50,0:33:32.64,English,,0,0,0,,Students around the world who have taken the equivalent of 213 it at their schools
Dialogue: 0,0:33:27.50,0:33:32.64,Chinese,,0,0,0,,从世界各地在他们学校已经接受了等同于 213 课程的学生口中
Dialogue: 0,0:33:33.48,0:33:40.18,English,,0,0,0,,I even though a couple years ago we were interviewing a faculty member tenure-track faculty member
Dialogue: 0,0:33:33.48,0:33:40.18,Chinese,,0,0,0,,即使在几年前,当我们正在面试一位终身教授
Dialogue: 0,0:33:40.60,0:33:43.62,English,,0,0,0,,Who went to do his undergrad at CMU
Dialogue: 0,0:33:40.60,0:33:43.62,Chinese,,0,0,0,,他是在 CMU 就读的本科
Dialogue: 0,0:33:43.94,0:33:51.32,English,,0,0,0,,And then went off to Stanford got his PhD at Stanford and was coming back to you know join the faculty
Dialogue: 0,0:33:43.94,0:33:51.32,Chinese,,0,0,0,,然后去斯坦福大学获得他在斯坦福大学的博士学位,并回到这里的系就职
Dialogue: 0,0:33:52.08,0:33:56.54,English,,0,0,0,,And he told me that 213 changed his life in our interview
Dialogue: 0,0:33:52.08,0:33:56.54,Chinese,,0,0,0,,他在面试中告诉我,213 改变了他的生活
Dialogue: 0,0:33:56.54,0:33:59.10,English,,0,0,0,,Now I don't know if he was trying to butter me up
Dialogue: 0,0:33:56.54,0:33:59.10,Chinese,,0,0,0,,现在我不知道他是否故意想要让我高兴
Dialogue: 0,0:33:59.10,0:34:00.88,English,,0,0,0,,But I think I believe him
Dialogue: 0,0:33:59.10,0:34:00.88,Chinese,,0,0,0,,但我相信他
Dialogue: 0,0:34:00.88,0:34:05.78,English,,0,0,0,,He said it changed his whole life in the sense that it gave him a research direction
Dialogue: 0,0:34:00.88,0:34:05.78,Chinese,,0,0,0,,他说这改变了他的整个生活,因为它给了他一个研究方向
Dialogue: 0,0:34:05.78,0:34:12.98,English,,0,0,0,,You know he didn't really know what he knew it kind of like computer science but it didn't really know what direction to go
Dialogue: 0,0:34:05.78,0:34:12.98,Chinese,,0,0,0,,他过去并不真正知道什么是计算机科学,并不知道要走什么方向
Dialogue: 0,0:34:13.56,0:34:19.88,English,,0,0,0,,After he took 213 he knew he wanted to to do his work (his life's work) in systems
Dialogue: 0,0:34:13.56,0:34:19.88,Chinese,,0,0,0,,在他上 213 之后,他知道他的人生目标工作是计算机系统
Dialogue: 0,0:34:20.56,0:34:25.66,English,,0,0,0,,Now it was just remarkable right to come down and tap we ended up actually hiring him
Dialogue: 0,0:34:20.56,0:34:25.66,Chinese,,0,0,0,,现在,他认为选择计算机底层是很正确的选择,我们最终聘请了他
Dialogue: 0,0:34:26.32,0:34:31.10,English,,0,0,0,,He told me that everybody in his lab at Stanford all of the grad students had a copy of the book on their desk
Dialogue: 0,0:34:26.32,0:34:31.10,Chinese,,0,0,0,,他告诉我,在他斯坦福大学的实验室里,每个研究生都在他们的办公桌上放了这本书
Dialogue: 0,0:34:31.90,0:34:35.20,English,,0,0,0,,From and they were from all over you know all different schools
Dialogue: 0,0:34:31.90,0:34:35.20,Chinese,,0,0,0,,他们都来自不同的学校
Dialogue: 0,0:34:36.58,0:34:44.32,English,,0,0,0,,And so I mean I even I was in a bookstore in Beijing a couple years ago right outside the PKU campus
Dialogue: 0,0:34:36.58,0:34:44.32,Chinese,,0,0,0,,我几年前进入北京一家书店,就在北大校园外面
Dialogue: 0,0:34:45.14,0:34:49.22,English,,0,0,0,,I was up on the fifth floor trying to see if I could find a copy of the textbook
Dialogue: 0,0:34:45.14,0:34:49.22,Chinese,,0,0,0,,我在五楼想看看是否可以找到这本书
Dialogue: 0,0:34:49.64,0:34:53.54,English,,0,0,0,,And I found the English version in one aisle
Dialogue: 0,0:34:49.64,0:34:53.54,Chinese,,0,0,0,,然后我在一个通道里找到了英文版本
Dialogue: 0,0:34:54.84,0:34:57.70,English,,0,0,0,,And then a couple aisles over I found the Chinese version
Dialogue: 0,0:34:54.84,0:34:57.70,Chinese,,0,0,0,,接着我在相隔几个过道远的地方找到了中文版
Dialogue: 0,0:34:57.72,0:35:03.40,English,,0,0,0,,I was going through the Chinese version and this guy taps me on my shoulder
Dialogue: 0,0:34:57.72,0:35:03.40,Chinese,,0,0,0,,我正在浏览中文版本,有个人在我的肩上拍了一下
Dialogue: 0,0:35:04.04,0:35:10.56,English,,0,0,0,,And I turned around,he says oh man that that book is really good you should the English version is 2 aisles over
Dialogue: 0,0:35:04.04,0:35:10.56,Chinese,,0,0,0,,我转过身来,他说哦哥们,那本书真的很好,你应该看英文原版,离这里两个过道远
Dialogue: 0,0:35:13.88,0:35:19.66,English,,0,0,0,,And I mean it just blew me away to be to be in the head of someone like
Dialogue: 0,0:35:13.88,0:35:19.66,Chinese,,0,0,0,,它戳破了我以为我会被读者牢记住的想法
Dialogue: 0,0:35:20.14,0:35:23.96,English,,0,0,0,,halfway around the world it was just that it was just one of those moments
Dialogue: 0,0:35:20.14,0:35:23.96,Chinese,,0,0,0,,在世界各地的中途,它只是那些时刻之一
Dialogue: 0,0:35:24.22,0:35:30.28,English,,0,0,0,,So I'm not trying to boast, I'm just trying what I want I want to give you the sense of
Dialogue: 0,0:35:24.22,0:35:30.28,Chinese,,0,0,0,,所以我不想吹牛,我只是想尝试给你我的感受
Dialogue: 0,0:35:30.28,0:35:35.84,English,,0,0,0,,What it what an opportunity this course represents for Randal and I to to have
Dialogue: 0,0:35:30.28,0:35:35.84,Chinese,,0,0,0,,这个课程对 Randy 和我来说有什么样的可能
Dialogue: 0,0:35:35.84,0:35:42.06,English,,0,0,0,,What we hope will be a really positive impact on on your lives
Dialogue: 0,0:35:35.84,0:35:42.06,Chinese,,0,0,0,,我们希望对你的人生产生真正的积极影响
Dialogue: 0,0:35:43.84,0:35:50.06,English,,0,0,0,,So let me we have kind of a kind of a funny organization for the course
Dialogue: 0,0:35:43.84,0:35:50.06,Chinese,,0,0,0,,我们这个课程有个很有趣的课程安排
Dialogue: 0,0:35:51.34,0:35:56.04,English,,0,0,0,,in response to that just the the tremendous demand we have we found that we have for it
Dialogue: 0,0:35:51.34,0:35:56.04,Chinese,,0,0,0,,为了应对巨大的需求,我们发现我们有这个需求
Dialogue: 0,0:35:57.00,0:36:01.34,English,,0,0,0,,So there's there's actually three course numbers but it's all the same course
Dialogue: 0,0:35:57.00,0:36:01.34,Chinese,,0,0,0,,所以实际上有三个课程号码,但它们都是相同的课程
Dialogue: 0,0:36:02.36,0:36:07.28,English,,0,0,0,,It's the identical course 513, 15-513 is for our master students
Dialogue: 0,0:36:02.36,0:36:07.28,Chinese,,0,0,0,,这是相同的课程 513, 15-513 是针对我们的硕士生
Dialogue: 0,0:36:07.92,0:36:14.38,English,,0,0,0,,And the 15-513 doesn't have a formal lecture so there's no seats assigned to it
Dialogue: 0,0:36:07.92,0:36:14.38,Chinese,,0,0,0,,而 15-513 没有正式的面授课,所以没有分配座位
Dialogue: 0,0:36:14.96,0:36:17.50,English,,0,0,0,,It instead we'll videotape the lectures
Dialogue: 0,0:36:14.96,0:36:17.50,Chinese,,0,0,0,,相反,我们会录制讲座
Dialogue: 0,0:36:18.42,0:36:23.30,English,,0,0,0,,And e'll make those available on the course web web page for our graduate students
Dialogue: 0,0:36:18.42,0:36:23.30,Chinese,,0,0,0,,并且,我们会在研究生的课程网页上提供这些录像
Dialogue: 0,0:36:24.16,0:36:31.66,English,,0,0,0,,The reason we do this is just because in the past well we didn't have enough seats for everyone
Dialogue: 0,0:36:24.16,0:36:31.66,Chinese,,0,0,0,,我们这样做的原因是因为在过去,我们没有足够的席位给每个人
Dialogue: 0,0:36:31.92,0:36:37.90,English,,0,0,0,,And there would be cases where there might be a hundred 150 master students on the waitlist
Dialogue: 0,0:36:31.92,0:36:37.90,Chinese,,0,0,0,,而且有些情况下,可能会有一百名 150 名硕士生在候课名单上
Dialogue: 0,0:36:38.46,0:36:39.88,English,,0,0,0,,They wouldn't be able to get into the course
Dialogue: 0,0:36:38.46,0:36:39.88,Chinese,,0,0,0,,他们无法参加这个课程
Dialogue: 0,0:36:40.78,0:36:44.38,English,,0,0,0,,We didn't really want that because they need this course for to take other courses
Dialogue: 0,0:36:40.78,0:36:44.38,Chinese,,0,0,0,,我们不想这样,因为他们需要这门课来参加其他课程
Dialogue: 0,0:36:45.94,0:36:53.02,English,,0,0,0,,So that's the reason why we have this this sort of does not need version of 213, 513
Dialogue: 0,0:36:45.94,0:36:53.02,Chinese,,0,0,0,,所以这就是为什么我们有这种累赘的 213, 513 两个版本的原因
Dialogue: 0,0:36:53.02,0:36:57.72,English,,0,0,0,,Because we can admit as many all the master's students that that need to take the course
Dialogue: 0,0:36:53.02,0:36:57.72,Chinese,,0,0,0,,因为我们可以接收所有需要上这门课的硕士生
Dialogue: 0,0:36:58.42,0:37:07.84,English,,0,0,0,,Now 15-213 and 18-213 or are for undergraduates in computer science and ECE respectively
Dialogue: 0,0:36:58.42,0:37:07.84,Chinese,,0,0,0,,现在 15-213 和 18-213 分别是针对计算机科学和电子计算机工程的本科生
Dialogue: 0,0:37:12.36,0:37:19.18,English,,0,0,0,,The undergraduates will go to lectures and recitations okay in person graduate students will watch videotapes of those
Dialogue: 0,0:37:12.36,0:37:19.18,Chinese,,0,0,0,,本科生将去上课,研究生会看这些录像带
Dialogue: 0,0:37:19.78,0:37:20.62,English,,0,0,0,,But otherwise,yes
Dialogue: 0,0:37:19.78,0:37:20.62,Chinese,,0,0,0,,但是,从另一方面,好的
Dialogue: 0,0:37:21.20,0:37:24.64,English,,0,0,0,,[students speaking]
Dialogue: 0,0:37:21.20,0:37:24.64,Chinese,,0,0,0,,[学生发言]
Dialogue: 0,0:37:26.34,0:37:28.74,English,,0,0,0,,Yeah we're making them available to everyone actually
Dialogue: 0,0:37:26.34,0:37:28.74,Chinese,,0,0,0,,是的,我们正在将它们提供给每个人
Dialogue: 0,0:37:30.76,0:37:31.30,English,,0,0,0,,Sorry?
Dialogue: 0,0:37:30.76,0:37:31.30,Chinese,,0,0,0,,什么?
Dialogue: 0,0:37:33.10,0:37:35.96,English,,0,0,0,,And lecture slides as well everything's available on the course web page
Dialogue: 0,0:37:33.10,0:37:35.96,Chinese,,0,0,0,,和演讲幻灯片的所有内容都会在课程网站上提供
Dialogue: 0,0:37:40.68,0:37:41.88,English,,0,0,0,,So you'll be doing
Dialogue: 0,0:37:40.68,0:37:41.88,Chinese,,0,0,0,,所以你会做
Dialogue: 0,0:37:45.72,0:37:50.40,English,,0,0,0,,The all of students will have equal access to office hours,
Dialogue: 0,0:37:45.72,0:37:50.40,Chinese,,0,0,0,,所有的学生将有平等的访问办公室时间,
Dialogue: 0,0:37:50.50,0:37:56.50,English,,0,0,0,,the staff mailing list and everybody does the same labs and the same exams
Dialogue: 0,0:37:50.50,0:37:56.50,Chinese,,0,0,0,,员工邮件列表和每个人都做同样的实验作业和相同的考试
Dialogue: 0,0:37:57.02,0:38:01.86,English,,0,0,0,,Okay so it's just a question it's just a matter of whether you're good a lecture in person or if you watch it on video
Dialogue: 0,0:37:57.02,0:38:01.86,Chinese,,0,0,0,,好吧,这只是一个你是善于听讲座,还是在视频中观看的问题
Dialogue: 0,0:38:02.22,0:38:06.84,English,,0,0,0,,In fact if you know since it's available to everybody if you miss lecture it'll be there
Dialogue: 0,0:38:02.22,0:38:06.84,Chinese,,0,0,0,,事实上,如果你错过讲座的话,每个人都可以在网页上找到它
Dialogue: 0,0:38:07.18,0:38:10.06,English,,0,0,0,,on the webpage you can catch up which I know you'll probably do
Dialogue: 0,0:38:07.18,0:38:10.06,Chinese,,0,0,0,,在网页上你可以跟上进度,我想你们很可能要这样做
Dialogue: 0,0:38:10.64,0:38:12.86,English,,0,0,0,,Actually I know most of you will never miss class
Dialogue: 0,0:38:10.64,0:38:12.86,Chinese,,0,0,0,,其实我知道你们大部分人都不会翘课
Dialogue: 0,0:38:13.40,0:38:16.26,English,,0,0,0,,Right, but the few of you who do now you'll be able to watch the video
Dialogue: 0,0:38:13.40,0:38:16.26,Chinese,,0,0,0,,但现在你们中的极少数人会,他们可以看视频
Dialogue: 0,0:38:19.68,0:38:25.04,English,,0,0,0,,Okay.All right this is the one part,this part I hate
Dialogue: 0,0:38:19.68,0:38:25.04,Chinese,,0,0,0,,好吧,这一部分是我讨厌的部分
Dialogue: 0,0:38:26.40,0:38:29.66,English,,0,0,0,,I love teaching that this is the one part teaching that
Dialogue: 0,0:38:26.40,0:38:29.66,Chinese,,0,0,0,,我喜欢教学,但是不包括这部分
Dialogue: 0,0:38:30.20,0:38:34.46,English,,0,0,0,,None of us really like.But we have to talk about it and that's academic integrity
Dialogue: 0,0:38:30.20,0:38:34.46,Chinese,,0,0,0,,我们没有人真的喜欢。但我们必须提起它,那就是学术诚信
Dialogue: 0,0:38:36.48,0:38:43.42,English,,0,0,0,,If you're new on campus coming from a international school
Dialogue: 0,0:38:36.48,0:38:43.42,Chinese,,0,0,0,,如果你是来自国际地区学校的校园新生
Dialogue: 0,0:38:43.64,0:38:47.02,English,,0,0,0,,If you're an international student new on campus
Dialogue: 0,0:38:43.64,0:38:47.02,Chinese,,0,0,0,,如果你是新的国际学生
Dialogue: 0,0:38:48.20,0:38:52.84,English,,0,0,0,,There might be different notions of academic integrity
Dialogue: 0,0:38:48.20,0:38:52.84,Chinese,,0,0,0,,学术诚信可能有不同的概念
Dialogue: 0,0:38:53.58,0:38:59.52,English,,0,0,0,,And different notions of cheating at your undergraduate school your old school
Dialogue: 0,0:38:53.58,0:38:59.52,Chinese,,0,0,0,,和你的本校在你的旧学校作弊的不同概念
Dialogue: 0,0:39:00.32,0:39:03.44,English,,0,0,0,,So if you're new on campus pay very close attention to this
Dialogue: 0,0:39:00.32,0:39:03.44,Chinese,,0,0,0,,所以,如果你是校园新人,就要非常注意这一点
Dialogue: 0,0:39:03.66,0:39:09.44,English,,0,0,0,,Because at Carnegie Mellon we take academic integrity very seriously
Dialogue: 0,0:39:03.66,0:39:09.44,Chinese,,0,0,0,,因为在卡内基梅隆,我们非常重视学术诚信
Dialogue: 0,0:39:10.90,0:39:15.94,English,,0,0,0,,Okay it's not a wink wink nod nod, we're very serious about it
Dialogue: 0,0:39:10.90,0:39:15.94,Chinese,,0,0,0,,好吧,这不是一个眨眼点头的话题,我们对此非常认真
Dialogue: 0,0:39:18.18,0:39:23.44,English,,0,0,0,,We want everybody doing their own work to preserve the integrity of the courses
Dialogue: 0,0:39:18.18,0:39:23.44,Chinese,,0,0,0,,我们希望每个人都独自完成作业,以保持课程的品质
Dialogue: 0,0:39:25.98,0:39:27.96,English,,0,0,0,,So what exactly is cheating?
Dialogue: 0,0:39:25.98,0:39:27.96,Chinese,,0,0,0,,那么究竟是什么作弊?
Dialogue: 0,0:39:29.76,0:39:31.64,English,,0,0,0,,So if you share code with anybody
Dialogue: 0,0:39:29.76,0:39:31.64,Chinese,,0,0,0,,所以,如果你与任何人分享代码
Dialogue: 0,0:39:31.80,0:39:39.48,English,,0,0,0,,either copying, retyping, if looking at somebody's code like, if you look at somebody's code on the screen
Dialogue: 0,0:39:31.80,0:39:39.48,Chinese,,0,0,0,,无论是复制,重新输入,查看某人的代码,例如你看屏幕上的某个人的代码
Dialogue: 0,0:39:41.46,0:39:42.90,English,,0,0,0,,Or if you give somebody a file
Dialogue: 0,0:39:41.46,0:39:42.90,Chinese,,0,0,0,,或者如果你给某人一个文件
Dialogue: 0,0:39:43.88,0:39:50.16,English,,0,0,0,,All of those,all of those examples of sharing are cheating
Dialogue: 0,0:39:43.88,0:39:50.16,Chinese,,0,0,0,,所有这些,所有这些和他人分享的例子都是作弊
Dialogue: 0,0:39:52.32,0:39:56.92,English,,0,0,0,,If you describe your code like line by line to somebody that's cheating
Dialogue: 0,0:39:52.32,0:39:56.92,Chinese,,0,0,0,,如果你逐行描述你的代码给别人,是作弊
Dialogue: 0,0:40:00.08,0:40:04.38,English,,0,0,0,,If you coach somebody line by line that's cheating
Dialogue: 0,0:40:00.08,0:40:04.38,Chinese,,0,0,0,,如果你指导某人一行一行写代码,是作弊
Dialogue: 0,0:40:07.48,0:40:11.54,English,,0,0,0,,Searching the web for solutions just the act of searching is cheating
Dialogue: 0,0:40:07.48,0:40:11.54,Chinese,,0,0,0,,搜索网络上的解决方案,仅是搜索的行为,也是作弊
Dialogue: 0,0:40:12.44,0:40:16.20,English,,0,0,0,,This is a real problem for us in particular
Dialogue: 0,0:40:12.44,0:40:16.20,Chinese,,0,0,0,,这对我们来说尤其是一个实际的问题
Dialogue: 0,0:40:16.20,0:40:20.96,English,,0,0,0,,Because the course is I offered all around the world and
Dialogue: 0,0:40:16.20,0:40:20.96,Chinese,,0,0,0,,因为课程是我向全世界提供的
Dialogue: 0,0:40:22.40,0:40:26.22,English,,0,0,0,,People either maliciously or or sometimes just they're proud of their work
Dialogue: 0,0:40:22.40,0:40:26.22,Chinese,,0,0,0,,人们无论是恶意传播,或是他们有时只是为自己的成果感到自豪
Dialogue: 0,0:40:26.22,0:40:29.38,English,,0,0,0,,And they post it you know for employers on like public github sites
Dialogue: 0,0:40:26.22,0:40:29.38,Chinese,,0,0,0,,他们会在类似的公共网站例如 Github 上发布成果,并展示给招聘者
Dialogue: 0,0:40:31.18,0:40:35.80,English,,0,0,0,,So it might be tempting to to search for these solutions
Dialogue: 0,0:40:31.18,0:40:35.80,Chinese,,0,0,0,,因此,寻找这些解决方案可能很诱人
Dialogue: 0,0:40:37.22,0:40:39.14,English,,0,0,0,,But even the act of searching is cheating
Dialogue: 0,0:40:37.22,0:40:39.14,Chinese,,0,0,0,,但即使是搜寻的行为也是作弊
Dialogue: 0,0:40:40.12,0:40:44.88,English,,0,0,0,,And definitely if you find some a solution in and use it.That's cheating
Dialogue: 0,0:40:40.12,0:40:44.88,Chinese,,0,0,0,,当然,如果你找到一些解决方案并使用它,那就是作弊
Dialogue: 0,0:40:45.48,0:40:47.10,English,,0,0,0,,Even if you modify it afterwards
Dialogue: 0,0:40:45.48,0:40:47.10,Chinese,,0,0,0,,即使你之后修改它
Dialogue: 0,0:40:48.94,0:40:53.78,English,,0,0,0,,And I just want you to remember I know how to use Google just as well as anybody else right
Dialogue: 0,0:40:48.94,0:40:53.78,Chinese,,0,0,0,,我只想让你记住我知道和其他人一样也会用 Google
Dialogue: 0,0:40:53.78,0:40:56.60,English,,0,0,0,,So I can search for solutions too
Dialogue: 0,0:40:53.78,0:40:56.60,Chinese,,0,0,0,,所以我也可以搜索解决方案
Dialogue: 0,0:41:02.02,0:41:12.00,English,,0,0,0,,So copying code you know you might be tempted to copy code from someone who took the class you know in a previous semester
Dialogue: 0,0:41:02.02,0:41:12.00,Chinese,,0,0,0,,因此,你复制的代码可能在之前的课中已经被某人复制并使用过了
Dialogue: 0,0:41:12.46,0:41:14.98,English,,0,0,0,,Don't do it,that's that's cheating too
Dialogue: 0,0:41:12.46,0:41:14.98,Chinese,,0,0,0,,不要这样做,那也是作弊
Dialogue: 0,0:41:15.80,0:41:16.62,English,,0,0,0,,Now what's not cheating?
Dialogue: 0,0:41:15.80,0:41:16.62,Chinese,,0,0,0,,那什么不是作弊?
Dialogue: 0,0:41:16.64,0:41:19.52,English,,0,0,0,,So you can help each other use tools
Dialogue: 0,0:41:16.64,0:41:19.52,Chinese,,0,0,0,,你可以互相帮助使用工具
Dialogue: 0,0:41:20.64,0:41:22.84,English,,0,0,0,,You know somebody's having trouble using gdb
Dialogue: 0,0:41:20.64,0:41:22.84,Chinese,,0,0,0,,有人在使用 GDB 时遇到麻烦
Dialogue: 0,0:41:22.84,0:41:28.12,English,,0,0,0,,You know they have questions about how to run use a text editor
Dialogue: 0,0:41:22.84,0:41:28.12,Chinese,,0,0,0,,他们有关于如何运行使用文本编辑器的问题
Dialogue: 0,0:41:28.38,0:41:32.68,English,,0,0,0,,That stuff's all great you help each other out using the tools
Dialogue: 0,0:41:28.38,0:41:32.68,Chinese,,0,0,0,,这些东西都很棒,你们互相帮助学习使用工具
Dialogue: 0,0:41:32.68,0:41:35.26,English,,0,0,0,,How to login the shark machines all of that kind of stuff
Dialogue: 0,0:41:32.68,0:41:35.26,Chinese,,0,0,0,,如何登录 Shark Machine 的之类的事情
Dialogue: 0,0:41:37.78,0:41:41.98,English,,0,0,0,,You can help you can discuss sort of high-level design issues and that's probably a good idea
Dialogue: 0,0:41:37.78,0:41:41.98,Chinese,,0,0,0,,你们可以讨论某种高层次的设计问题,这可能是一个好主意
Dialogue: 0,0:41:41.98,0:41:42.26,English,,0,0,0,,Yes
Dialogue: 0,0:41:41.98,0:41:42.26,Chinese,,0,0,0,,什么事?
Dialogue: 0,0:41:42.26,0:41:46.82,English,,0,0,0,,[student speaking]
Dialogue: 0,0:41:42.26,0:41:46.82,Chinese,,0,0,0,,[学生发言]
Dialogue: 0,0:41:46.90,0:41:49.70,English,,0,0,0,,Yeah yeah did you take it a previous semester
Dialogue: 0,0:41:46.90,0:41:49.70,Chinese,,0,0,0,,是的,你是否在上一学期上课
Dialogue: 0,0:41:49.70,0:41:55.30,English,,0,0,0,,[student speaking]
Dialogue: 0,0:41:49.70,0:41:55.30,Chinese,,0,0,0,,[学生发言]
Dialogue: 0,0:41:55.30,0:42:00.14,English,,0,0,0,,Okay yeah the question was if you took it in a previous semester can you use your work and the answer is yes
Dialogue: 0,0:41:55.30,0:42:00.14,Chinese,,0,0,0,,好的,问题是如果你在上一个学期上过课,你可以使用你的成果,答案是肯定的
Dialogue: 0,0:42:04.38,0:42:08.32,English,,0,0,0,,So you can also talk to each other about high level you know design issues
Dialogue: 0,0:42:04.38,0:42:08.32,Chinese,,0,0,0,,所以你也可以互相谈论高层次内容,设计理念
Dialogue: 0,0:42:08.86,0:42:16.02,English,,0,0,0,,You know how are you using an explicit list or using a segregated list for your Malloc lab
Dialogue: 0,0:42:08.86,0:42:16.02,Chinese,,0,0,0,,你是如何为你的 Malloc Lab 使用 explict list 或使用 segregated list
Dialogue: 0,0:42:16.52,0:42:23.56,English,,0,0,0,,That kind of stuff is okay, high level okay low level not okay
Dialogue: 0,0:42:16.52,0:42:23.56,Chinese,,0,0,0,,这样的东西可以,高层次的可以,低层次的不行
Dialogue: 0,0:42:24.18,0:42:27.02,English,,0,0,0,,Basically what we want you to write your own code
Dialogue: 0,0:42:24.18,0:42:27.02,Chinese,,0,0,0,,基本上我们希望你写你自己的代码
Dialogue: 0,0:42:28.86,0:42:32.28,English,,0,0,0,,This is not,you know it's kind of a cut and paste world these days
Dialogue: 0,0:42:28.86,0:42:32.28,Chinese,,0,0,0,,你知道现在是一个复制和粘贴的世界
Dialogue: 0,0:42:32.28,0:42:37.96,English,,0,0,0,,Right you look stuff up on Google, Stack Overflow you cut and paste it
Dialogue: 0,0:42:32.28,0:42:37.96,Chinese,,0,0,0,,你在 Google,Stack Overflow 找你想要的东西,然后剪切并粘贴它
Dialogue: 0,0:42:39.38,0:42:41.40,English,,0,0,0,,But that's not that's not the way we do it
Dialogue: 0,0:42:39.38,0:42:41.40,Chinese,,0,0,0,,但那不是我们的方式
Dialogue: 0,0:42:42.44,0:42:45.36,English,,0,0,0,,Here we want you to do the work yourself
Dialogue: 0,0:42:42.44,0:42:45.36,Chinese,,0,0,0,,我们希望你们独立完成作业
Dialogue: 0,0:42:45.36,0:42:51.72,English,,0,0,0,,We want you to enjoy the experience of figuring things out and learning how to solve problems
Dialogue: 0,0:42:45.36,0:42:51.72,Chinese,,0,0,0,,我们希望你能够享受发现问题和学习如何解决问题的过程
Dialogue: 0,0:42:55.20,0:42:58.96,English,,0,0,0,,Now the consequences for cheating there's a single sanction
Dialogue: 0,0:42:55.20,0:42:58.96,Chinese,,0,0,0,,现在作弊的后果是单一的制裁
Dialogue: 0,0:43:00.84,0:43:05.32,English,,0,0,0,,If you're caught cheating you'll be expelled from the course with an R
Dialogue: 0,0:43:00.84,0:43:05.32,Chinese,,0,0,0,,如果你被发现作弊,你会被驱逐出课程并得到 R 评分
Dialogue: 0,0:43:05.64,0:43:12.10,English,,0,0,0,,There's no exceptions alright if you drop the course we'll just reinstate you and then flunk you
Dialogue: 0,0:43:05.64,0:43:12.10,Chinese,,0,0,0,,没有例外,如果你放弃课程,我们会恢复你,然后让你不及格
Dialogue: 0,0:43:12.76,0:43:15.04,English,,0,0,0,,[students laugh]
Dialogue: 0,0:43:12.76,0:43:15.04,Chinese,,0,0,0,,[学生笑]
Dialogue: 0,0:43:16.00,0:43:22.84,English,,0,0,0,,It's really uh it's a very serious very serious penalty
Dialogue: 0,0:43:16.00,0:43:22.84,Chinese,,0,0,0,,这真的是这是一个非常严重的非常严重的处罚
Dialogue: 0,0:43:22.84,0:43:26.90,English,,0,0,0,,Because we just take it we take it so seriously that it's uh
Dialogue: 0,0:43:22.84,0:43:26.90,Chinese,,0,0,0,,因为只要我们抓到,我们十分严肃的处理
Dialogue: 0,0:43:31.24,0:43:34.48,English,,0,0,0,,It's just something we don't want your to do
Dialogue: 0,0:43:31.24,0:43:34.48,Chinese,,0,0,0,,这只是我们不希望你做的事情
Dialogue: 0,0:43:36.28,0:43:41.00,English,,0,0,0,,We have amazing tools to detect code plagiarism
Dialogue: 0,0:43:36.28,0:43:41.00,Chinese,,0,0,0,,我们有极好的工具来检测代码抄袭
Dialogue: 0,0:43:48.72,0:43:52.02,English,,0,0,0,,We have amazing tools to detect plagiarism
Dialogue: 0,0:43:48.72,0:43:52.02,Chinese,,0,0,0,,我们有极好的工具来检测抄袭
Dialogue: 0,0:43:54.58,0:43:58.76,English,,0,0,0,,That are resilient to renaming reformatting
Dialogue: 0,0:43:54.58,0:43:58.76,Chinese,,0,0,0,,它这对重命名、重新格式化都具有适应性
Dialogue: 0,0:43:59.50,0:44:01.54,English,,0,0,0,,They operate at a very deep syntactic level
Dialogue: 0,0:43:59.50,0:44:01.54,Chinese,,0,0,0,,它们工作在层次非常深的语法层面
Dialogue: 0,0:44:02.24,0:44:07.14,English,,0,0,0,,So just please please don't do it
Dialogue: 0,0:44:02.24,0:44:07.14,Chinese,,0,0,0,,所以请千万不要这样做
Dialogue: 0,0:44:08.22,0:44:12.80,English,,0,0,0,,We have I think 18 TAs we have office hours almost every day of the week
Dialogue: 0,0:44:08.22,0:44:12.80,Chinese,,0,0,0,,我们有 18 个助教,每周都有的开放办公室时间
Dialogue: 0,0:44:14.30,0:44:19.52,English,,0,0,0,,There's plenty of opportunities and ways to get help start early
Dialogue: 0,0:44:14.30,0:44:19.52,Chinese,,0,0,0,,有很多机会和方式可以帮助你,尽早去做
Dialogue: 0,0:44:21.62,0:44:25.78,English,,0,0,0,,If you get stuck start early enough so that if you get stuck you can go ask for help
Dialogue: 0,0:44:21.62,0:44:25.78,Chinese,,0,0,0,,如果你遇到困难了,尽快去寻求帮助
Dialogue: 0,0:44:27.64,0:44:35.70,English,,0,0,0,,We have but automatic extensions built-in if you need more time I'll talk about that later form of grace days
Dialogue: 0,0:44:27.64,0:44:35.70,Chinese,,0,0,0,,如果你需要更多时间,系统内置有自动扩展时长的插件,以后再说这个,以宽限日为形式
Dialogue: 0,0:44:36.68,0:44:41.68,English,,0,0,0,,But please please whatever you do don't cheat
Dialogue: 0,0:44:36.68,0:44:41.68,Chinese,,0,0,0,,但请你,请你不管做什么都不要作弊
Dialogue: 0,0:44:42.70,0:44:49.34,English,,0,0,0,,It's just tragic when it happens last last fall 25 students were expelled from the course
Dialogue: 0,0:44:42.70,0:44:49.34,Chinese,,0,0,0,,去年秋天发生了一场悲剧,有 25 名学生被逐出课程
Dialogue: 0,0:44:50.12,0:44:54.12,English,,0,0,0,,Some were expelled from the University because it was a second offense
Dialogue: 0,0:44:50.12,0:44:54.12,Chinese,,0,0,0,,有些人被驱逐出大学,因这时他们第二次作弊
Dialogue: 0,0:44:55.84,0:45:02.58,English,,0,0,0,,Many were sent home I talked to students who were like the only person in their family to go to college
Dialogue: 0,0:44:55.84,0:45:02.58,Chinese,,0,0,0,,许多人被送回家,有些人是家里唯一上过大学的人
Dialogue: 0,0:45:03.38,0:45:11.12,English,,0,0,0,,The only person in their village to go to college and they were going home without without a degree and it's just tragic it's just
Dialogue: 0,0:45:03.38,0:45:11.12,Chinese,,0,0,0,,有一个人村里唯一上大学的人,(因为作弊)没有学位就回家了,这只是一个悲剧
Dialogue: 0,0:45:12.52,0:45:14.52,English,,0,0,0,,So please please please don't do it
Dialogue: 0,0:45:12.52,0:45:14.52,Chinese,,0,0,0,,所以请千万不要这样做
Dialogue: 0,0:45:14.64,0:45:19.56,English,,0,0,0,,Do your own work and it'll be a wonderful experience
Dialogue: 0,0:45:14.64,0:45:19.56,Chinese,,0,0,0,,完全独自工作,这将是一个美妙的经历
Dialogue: 0,0:45:22.66,0:45:28.28,English,,0,0,0,,Okay let's Randy mentioned the the textbook is computer systems a programmers perspective third edition
Dialogue: 0,0:45:22.66,0:45:28.28,Chinese,,0,0,0,,好吧,Randy 提到教科书是《深入理解计算机系统》第三版
Dialogue: 0,0:45:30.92,0:45:39.56,English,,0,0,0,,You can know there's a whole bunch of supporting material on the books website at http://csapp.cs.cmu.edu/
Dialogue: 0,0:45:30.92,0:45:39.56,Chinese,,0,0,0,,你可以在 http://csapp.cs.cmu.edu/ 网站上获得大量支持材料
Dialogue: 0,0:45:40.28,0:45:43.60,English,,0,0,0,,And as Randy mentioned this this book really matters for the course
Dialogue: 0,0:45:40.28,0:45:43.60,Chinese,,0,0,0,,正如 Randy 提到的那样,这本书对课程而言非常重要
Dialogue: 0,0:45:43.60,0:45:46.16,English,,0,0,0,,Because actually the book came out of the course
Dialogue: 0,0:45:43.60,0:45:46.16,Chinese,,0,0,0,,因为这本书实际上是从课程中诞生出来的
Dialogue: 0,0:45:47.94,0:45:49.98,English,,0,0,0,,The book is the course of course it's the book
Dialogue: 0,0:45:47.94,0:45:49.98,Chinese,,0,0,0,,这本书就是这个课程,课程也是这本书
Dialogue: 0,0:45:52.12,0:45:54.66,English,,0,0,0,,And so it'll it will really help you, love it
Dialogue: 0,0:45:52.12,0:45:54.66,Chinese,,0,0,0,,所以它会真的帮助你,爱上它
Dialogue: 0,0:45:54.66,0:45:58.18,English,,0,0,0,,The labs that we do come directly from material we discuss in the book
Dialogue: 0,0:45:54.66,0:45:58.18,Chinese,,0,0,0,,我们的实验直接来自我们在书中讨论的内容
Dialogue: 0,0:45:59.20,0:46:00.82,English,,0,0,0,,So what I would encourage all of you to do
Dialogue: 0,0:45:59.20,0:46:00.82,Chinese,,0,0,0,,所以我鼓励大家做
Dialogue: 0,0:46:00.82,0:46:04.00,English,,0,0,0,,I'm not sure if anybody has ever taken this advice but I say it every year
Dialogue: 0,0:46:00.82,0:46:04.00,Chinese,,0,0,0,,我不确定是否有人接受过这个建议,但我每年都会这样说