1 00:00:00,000 --> 00:00:00,270 2 00:00:00,270 --> 00:00:01,790 DAVID Malan: Chào mừng trở lại, tất cả mọi người. 3 00:00:01,790 --> 00:00:05,030 Vì vậy, ngày hôm qua, bạn sẽ nhớ lại rằng chúng tôi tập trung vào các chủ đề này ở đây. 4 00:00:05,030 --> 00:00:08,380 Vì vậy, chúng tôi có bốn topics-- bao quát riêng tư, an ninh, và xã hội; 5 00:00:08,380 --> 00:00:11,960 công nghệ internet; điện toán đám mây; và cuối cùng, phát triển web. 6 00:00:11,960 --> 00:00:14,170 >> Có ai có băng thông hay thời gian 7 00:00:14,170 --> 00:00:16,900 để xem một chút John Oliver đêm qua? 8 00:00:16,900 --> 00:00:20,120 Nó thực sự khá thú vị, nếu không phải là một chút đáng sợ. 9 00:00:20,120 --> 00:00:24,700 Mọi thắc mắc về bất cứ điều gì chúng tôi đã làm ngày hôm qua? 10 00:00:24,700 --> 00:00:27,600 Bất kỳ giải thích? 11 00:00:27,600 --> 00:00:35,580 Bất kỳ câu hỏi mà bạn muốn thực hiện chắc chắn chúng ta chạm vào ngày hôm nay trong một số hình thức? 12 00:00:35,580 --> 00:00:37,300 slate sạch sẽ. 13 00:00:37,300 --> 00:00:38,760 >> Vì vậy, những gì trên chương trình nghị sự cho ngày hôm nay? 14 00:00:38,760 --> 00:00:41,301 Vì vậy, tôi nghĩ chúng ta sẽ bắt đầu ngày nay với một cái nhìn vào những gì thường 15 00:00:41,301 --> 00:00:44,460 được gọi là thinking-- máy tính tại nguy cơ quá đơn giản, suy nghĩ 16 00:00:44,460 --> 00:00:46,636 giống như một máy tính, có lẽ suy nghĩ như một kỹ sư, 17 00:00:46,636 --> 00:00:48,510 và cố gắng để bắt đầu tổ chức các suy nghĩ của bạn 18 00:00:48,510 --> 00:00:52,039 hoặc để cung cấp cho bạn một cảm giác tốt hơn gì có liên quan trong thực tế chỉ huy 19 00:00:52,039 --> 00:00:54,080 một máy tính để làm một cái gì đó bằng cách lập trình. 20 00:00:54,080 --> 00:00:56,663 Và chúng tôi sẽ giữ nó ở một khá mức cao, khá nhiều tiếng Anh, 21 00:00:56,663 --> 00:00:59,850 nhưng cố gắng sử dụng quen thuộc ví dụ để chính thức hóa như thế nào 22 00:00:59,850 --> 00:01:01,450 bạn sẽ đi về việc giải quyết vấn đề. 23 00:01:01,450 --> 00:01:04,080 >> Và chúng tôi sẽ xem xét lại một số CS chủ đề, như trừu tượng, 24 00:01:04,080 --> 00:01:06,040 đó đã đưa ra một vài lần ngày hôm qua, 25 00:01:06,040 --> 00:01:07,554 thuật toán, và sau đó đại diện. 26 00:01:07,554 --> 00:01:09,720 Và đó là nơi mà chúng ta sẽ bắt đầu ngày nay chỉ trong một khoảnh khắc. 27 00:01:09,720 --> 00:01:11,481 Sau đó chúng tôi sẽ xem xét lập trình. 28 00:01:11,481 --> 00:01:13,480 Chúng tôi sẽ có một cái nhìn tại một số cấu trúc cơ bản 29 00:01:13,480 --> 00:01:16,450 mà bạn có thể quen và thậm chí có thể tìm thấy khá trực quan. 30 00:01:16,450 --> 00:01:18,370 >> Chúng tôi sẽ xem xét, trên thực tế, tại một chương trình mẫu 31 00:01:18,370 --> 00:01:21,244 môi trường đó là rất dễ tiếp cận, rất vui tươi, và thực sự nhắm mục tiêu 32 00:01:21,244 --> 00:01:22,555 cho lứa tuổi từ 12 trở lên. 33 00:01:22,555 --> 00:01:25,930 Chúng tôi sẽ dành một vài phút có và sau đó có những điều đến một mức độ thấp hơn 34 00:01:25,930 --> 00:01:30,360 và thực sự nói về một số các thuật toán và cấu trúc dữ liệu, 35 00:01:30,360 --> 00:01:32,360 vậy để nói chuyện, mà lập trình viên thường sử dụng 36 00:01:32,360 --> 00:01:35,040 để giải quyết vấn đề xa hơn hiệu quả hơn có lẽ bạn 37 00:01:35,040 --> 00:01:37,322 có thể làm mà không có chúng hoàn toàn. 38 00:01:37,322 --> 00:01:40,280 Sau đó, sau khi ăn trưa, chúng tôi sẽ có một cái nhìn tại đống công nghệ, mà chỉ là 39 00:01:40,280 --> 00:01:42,240 một cách nói bộ sưu tập các công nghệ 40 00:01:42,240 --> 00:01:43,690 mà bạn có thể sử dụng để giải quyết một số vấn đề. 41 00:01:43,690 --> 00:01:46,670 Và chúng ta sẽ nói về bảng chữ cái súp của ngôn ngữ mà tồn tại today-- 42 00:01:46,670 --> 00:01:50,930 Java và Python và C ++ và PHP và Ruby và tất cả các loại vật khác. 43 00:01:50,930 --> 00:01:53,740 >> Chúng tôi sẽ xem xét một thời gian ngắn ở các mẫu thiết kế. 44 00:01:53,740 --> 00:01:57,730 Các lập trình viên, qua thời gian, có phương pháp nuôi 45 00:01:57,730 --> 00:02:00,690 mà có xu hướng để giúp họ giải quyết vấn đề dễ dàng hơn. 46 00:02:00,690 --> 00:02:04,390 Khi bạn bắt đầu thấy mình viết cùng một loại mã một lần nữa và một lần nữa, 47 00:02:04,390 --> 00:02:08,080 người chính thức hóa những lần lặp lại và tên gán cho chúng 48 00:02:08,080 --> 00:02:10,084 và sau đó sử dụng chúng và thúc đẩy họ, cuối cùng. 49 00:02:10,084 --> 00:02:12,250 Và chúng tôi sẽ nói một chút về chiến lược di động, 50 00:02:12,250 --> 00:02:16,099 giống như những gì nó có nghĩa là để thực sự làm cho một ứng dụng điện thoại di động hoặc một trang web di động. 51 00:02:16,099 --> 00:02:17,140 Bạn làm điều đó cho Android? 52 00:02:17,140 --> 00:02:17,730 Bạn làm điều đó cho iOS? 53 00:02:17,730 --> 00:02:19,160 Bạn làm điều đó cho cả những người? 54 00:02:19,160 --> 00:02:20,326 Và thương mại-off là gì? 55 00:02:20,326 --> 00:02:23,180 Và cuối cùng, chúng ta sẽ một lập trình web nhìn, mà 56 00:02:23,180 --> 00:02:25,380 là một thuật ngữ chung thực sự mô tả bất cứ lúc nào 57 00:02:25,380 --> 00:02:28,410 bạn viết phần mềm đó là nghĩa là để chạy trên web, 58 00:02:28,410 --> 00:02:30,430 liệu trên điện thoại hoặc máy tính để bàn hoặc máy tính xách tay. 59 00:02:30,430 --> 00:02:33,490 Chúng tôi sẽ có một cái nhìn thoáng qua cơ sở dữ liệu và thiết kế 60 00:02:33,490 --> 00:02:39,049 trong đó, nếu chỉ bởi vì hầu như bất kỳ ứng dụng dựa trên web thú vị 61 00:02:39,049 --> 00:02:40,590 những ngày này có một số loại cơ sở dữ liệu. 62 00:02:40,590 --> 00:02:42,380 Nếu không, nó sẽ chỉ có nội dung tĩnh. 63 00:02:42,380 --> 00:02:45,254 Và một cơ sở dữ liệu cho phép bạn thực hiện thay đổi theo thời gian, cho dù chính mình 64 00:02:45,254 --> 00:02:45,960 hoặc từ người dùng. 65 00:02:45,960 --> 00:02:47,820 Và chúng ta sẽ xem xét làm thế nào bạn sẽ đi về thiết kế 66 00:02:47,820 --> 00:02:50,510 mà cơ sở dữ liệu và các loại biệt ngữ mà có thể đi lên trong một kỹ sư của 67 00:02:50,510 --> 00:02:52,790 thảo luận tại một bảng trắng khi thực sự thực hiện 68 00:02:52,790 --> 00:02:53,900 một ứng dụng cho lần đầu tiên. 69 00:02:53,900 --> 00:02:57,002 >> Chúng tôi sẽ nói ngắn gọn về API, dịch vụ hữu ích 70 00:02:57,002 --> 00:02:59,960 mà bạn có thể sử dụng để đứng trên vai của những người khác, cho dù công ty 71 00:02:59,960 --> 00:03:02,619 hoặc cá nhân, và giải quyết của bạn vấn đề của riêng một cách nhanh chóng hơn. 72 00:03:02,619 --> 00:03:04,785 Và sau đó chúng tôi sẽ vọc lẽ một chút với JavaScript, 73 00:03:04,785 --> 00:03:08,900 một ngôn ngữ lập trình được sử dụng cả trong các trình duyệt hiện nay, nhưng cũng 74 00:03:08,900 --> 00:03:09,820 trong các máy chủ. 75 00:03:09,820 --> 00:03:11,890 Và có lẽ, chúng ta sẽ lại, thời gian cho phép, 76 00:03:11,890 --> 00:03:15,670 một số các tay vào công cụ web chúng tôi đã làm ngày hôm qua và tích hợp hai 77 00:03:15,670 --> 00:03:17,630 cùng trước khi chúng tôi hoãn lại. 78 00:03:17,630 --> 00:03:22,380 >> Vì vậy, với những gì mà-- ahead-- là Có điều gì mất tích mà bạn 79 00:03:22,380 --> 00:03:26,289 muốn chắc chắn rằng chúng ta chèn và chạm vào một số điểm. 80 00:03:26,289 --> 00:03:28,330 Nếu đó là suối để tâm, đưa nó lên trước khi dài. 81 00:03:28,330 --> 00:03:32,010 Nhưng tại sao chúng ta không bắt đầu với một nhìn vào tư duy tính toán. 82 00:03:32,010 --> 00:03:35,420 >> Và hãy để tôi đề nghị tư duy tính toán, một lần nữa, 83 00:03:35,420 --> 00:03:38,830 loại mô tả mức độ cao của những gì một nhà khoa học máy tính có thể làm. 84 00:03:38,830 --> 00:03:42,470 Và thực sự, chúng ta hãy bắt đầu với ba thành phần 85 00:03:42,470 --> 00:03:44,207 có thể đi vào tư duy tính toán. 86 00:03:44,207 --> 00:03:45,790 Đây chỉ là một cách để mô tả nó. 87 00:03:45,790 --> 00:03:48,490 Chúng tôi chắc chắn có thể xác định này trong nhiều cách. 88 00:03:48,490 --> 00:03:50,630 >> Nhưng hãy để tôi đề nghị, vì lợi ích của ngày hôm nay, 89 00:03:50,630 --> 00:03:53,910 rằng các vấn đề của thế giới, tất cả các vấn đề của thế giới, 90 00:03:53,910 --> 00:03:56,730 khi tiếp cận bởi một khoa học máy tính có thể 91 00:03:56,730 --> 00:04:00,990 được xem như là những gì chúng tôi sẽ đầu vào gọi, mà 92 00:04:00,990 --> 00:04:08,142 cần để đưa vào những gì chúng ta sẽ gọi thuật toán, mà sau đó mang lại kết quả đầu ra. 93 00:04:08,142 --> 00:04:10,600 Nói cách khác, toàn bộ thế giới của yêu cầu tôi giải quyết vấn đề 94 00:04:10,600 --> 00:04:13,140 có thể được chưng cất thành ba thành phần. 95 00:04:13,140 --> 00:04:14,450 Vì vậy, những gì tôi có nghĩa là đầu vào? 96 00:04:14,450 --> 00:04:17,060 Đầu vào chỉ là những gì bạn đang bàn giao để giải quyết. 97 00:04:17,060 --> 00:04:20,052 >> Ví dụ, đây là một vấn đề trường học cũ. 98 00:04:20,052 --> 00:04:22,760 Nếu tôi có một cuốn sách điện thoại ở đây và Tôi muốn tìm một cái gì đó vào nó, 99 00:04:22,760 --> 00:04:23,760 này là đầu vào của tôi. 100 00:04:23,760 --> 00:04:26,260 Tôi có 1.000 hoặc hơn trang trong một cuốn sách điện thoại. 101 00:04:26,260 --> 00:04:27,780 Đây là đầu vào cho vấn đề của tôi. 102 00:04:27,780 --> 00:04:31,507 Và tôi muốn tìm một cái gì như Mike Smith, do đó, một người bạn 103 00:04:31,507 --> 00:04:33,840 tên và số là hy vọng trong sổ địa chỉ này. 104 00:04:33,840 --> 00:04:36,430 >> Đây là trước khi những ngày của tế bào điện thoại, vì vậy tôi không thể chỉ tìm kiếm cho nó. 105 00:04:36,430 --> 00:04:38,540 Vì vậy, tôi phải làm điều đó tuổi tìm kiếm trường học và thực 106 00:04:38,540 --> 00:04:41,331 các yếu tố đầu vào cho một số câu trả lời. 107 00:04:41,331 --> 00:04:43,580 Và câu trả lời là chỉ cần đi để được gọi là đầu ra. 108 00:04:43,580 --> 00:04:44,871 Vì vậy, đầu vào là các cuốn sách điện thoại. 109 00:04:44,871 --> 00:04:47,787 Thuật toán là gì bộ bước tôi sử dụng để tìm Mike Smith. 110 00:04:47,787 --> 00:04:50,120 Và đầu ra là, hy vọng, số điện thoại Mike Smith. 111 00:04:50,120 --> 00:04:52,703 Và điều này sau đó sẽ được chỉ đại diện của hầu hết bất kỳ vấn đề 112 00:04:52,703 --> 00:04:55,210 đến với bạn là đầu vào tay và muốn sản xuất ra. 113 00:04:55,210 --> 00:04:59,459 >> Vì vậy, trước khi chúng ta xem xét quá trình qua đó chúng ta có thể giải quyết vấn đề đó, 114 00:04:59,459 --> 00:05:01,250 tìm Mike Smith và một cái gì đó như thế, 115 00:05:01,250 --> 00:05:04,090 chúng ta hãy xem xét đầu tiên và các đầu vào và đầu ra last--. 116 00:05:04,090 --> 00:05:08,060 Về thể chất, tất nhiên, các đầu vào đây được một bó toàn bộ giấy dán lại với nhau 117 00:05:08,060 --> 00:05:09,400 trong các hình thức của một cuốn sách điện thoại. 118 00:05:09,400 --> 00:05:13,660 Nhưng máy tính, máy tính xách tay course-- và máy tính để bàn và ngay cả điện thoại 119 00:05:13,660 --> 00:05:16,430 những days-- những người đang có các thiết bị điện tử. 120 00:05:16,430 --> 00:05:20,920 >> Và vào cuối ngày, những gì đầu vào chỉ với một máy tính? 121 00:05:20,920 --> 00:05:23,299 Vâng, đó là một cái gì đó như dây nguồn này đây. 122 00:05:23,299 --> 00:05:25,590 Tôi cắm nó vào tường, và Tôi nhận được một dòng electron, 123 00:05:25,590 --> 00:05:27,048 cho phép tôi để chạy máy. 124 00:05:27,048 --> 00:05:30,420 Hoặc có những electron tạo ra bằng cách của pin của tôi. 125 00:05:30,420 --> 00:05:33,790 Nhưng vào cuối ngày, đó là điều duy nhất đi vào máy tính xách tay của tôi. 126 00:05:33,790 --> 00:05:35,772 Và rất nhiều thú vị là công cụ cuối cùng 127 00:05:35,772 --> 00:05:37,480 sắp ra, liệu bằng cách của máy in 128 00:05:37,480 --> 00:05:40,320 hoặc màn hình hoặc audially hoặc tương tự. 129 00:05:40,320 --> 00:05:45,320 >> Vì vậy, nếu tất cả chúng ta có như chúng tôi đầu vào cơ bản cho một máy tính 130 00:05:45,320 --> 00:05:49,160 là điện, vì vậy chỉ cần electron đi vào và hay ra ngoài, 131 00:05:49,160 --> 00:05:54,465 và nên làm thế nào chúng ta có thể sử dụng đầu vào để thực sự đại diện cho thông tin? 132 00:05:54,465 --> 00:05:57,090 Nói cách khác, làm thế nào để chúng ta có được từ một dòng đơn giản của điện 133 00:05:57,090 --> 00:06:00,350 để đại diện cho thực tế số hoặc chữ thực tế 134 00:06:00,350 --> 00:06:03,620 hoặc hình ảnh thực tế trên màn hình hoặc phim thực tế hoặc e-mail 135 00:06:03,620 --> 00:06:05,690 hoặc bất cứ số nào khái niệm mức độ cao hơn, 136 00:06:05,690 --> 00:06:07,680 nếu bạn muốn, mà tại cuối ngày nào đó 137 00:06:07,680 --> 00:06:11,950 đã được lưu trữ trong này thiết bị cơ khí điện tử 138 00:06:11,950 --> 00:06:16,260 chỉ sử dụng những ingredients-- đơn giản electron ra vào? 139 00:06:16,260 --> 00:06:19,530 >> Vì vậy, có vẻ như, ở dạng đơn giản nhất, 140 00:06:19,530 --> 00:06:23,260 loại duy nhất của tiểu bang Tôi có trong thế giới của tôi, vì vậy 141 00:06:23,260 --> 00:06:25,350 để speak-- điều kiện trong world-- tôi là một trong hai 142 00:06:25,350 --> 00:06:33,020 Tôi có electron chảy, điện chảy, hay tôi làm not-- để bật, tắt. 143 00:06:33,020 --> 00:06:35,850 Và chúng ta hãy chính thức hóa và tắt, như một nhà khoa học máy tính có thể, 144 00:06:35,850 --> 00:06:37,255 chỉ với 1 và 0. 145 00:06:37,255 --> 00:06:39,880 Hãy chỉ mô tả một số tùy ý nhưng số lượng phù hợp với nó. 146 00:06:39,880 --> 00:06:41,970 1 có nghĩa là trên, 0 có nghĩa là tắt. 147 00:06:41,970 --> 00:06:45,427 Hoặc bạn cũng có thể xem đây là phương tiện thực sự trên phương tiện sai. 148 00:06:45,427 --> 00:06:47,510 Bạn cũng có thể làm đen và màu trắng hoặc màu đỏ và màu xanh. 149 00:06:47,510 --> 00:06:48,759 Bạn chỉ cần hai bộ mô tả. 150 00:06:48,759 --> 00:06:52,240 Và một nhà khoa học máy tính sẽ thường chỉ cần sử dụng 0 và 1. 151 00:06:52,240 --> 00:06:58,980 >> Vì vậy, nếu đó là trường hợp, bảng chữ cái duy nhất của tôi được bao gồm 0 và 1, làm thế nào 152 00:06:58,980 --> 00:07:03,360 Tôi có thể có thể có được đến số lượng 2 trong một máy tính, chỉ riêng trong số 3 153 00:07:03,360 --> 00:07:06,140 hoặc một lá thư của bảng chữ cái hoặc một hình ảnh hoặc một bộ phim? 154 00:07:06,140 --> 00:07:08,910 Làm thế nào để chúng ta loại bootstrap mình từ nguyên tắc cơ bản này 155 00:07:08,910 --> 00:07:12,080 của 0 và 1 người và thực sự đại diện cho một cái gì đó thú vị hơn? 156 00:07:12,080 --> 00:07:14,430 >> Vâng, chúng ta hãy đặt câu hỏi rằng giữ cho chỉ là một khoảnh khắc 157 00:07:14,430 --> 00:07:17,520 và xem xét cái gì hy vọng quen thuộc, 158 00:07:17,520 --> 00:07:21,150 thậm chí nếu bạn không thực sự nghĩ về nó trong bất kỳ chi tiết cho 10, 20, 30, 40, 50 159 00:07:21,150 --> 00:07:22,520 nhiều năm. 160 00:07:22,520 --> 00:07:24,780 Đây là những gì? 161 00:07:24,780 --> 00:07:28,050 Làm thế nào bạn sẽ phát âm đó? 162 00:07:28,050 --> 00:07:30,770 Không phải là một câu hỏi trick. 163 00:07:30,770 --> 00:07:32,950 Một số, nhưng nó là gì? 164 00:07:32,950 --> 00:07:34,842 1, 2, 3, hoặc 123. 165 00:07:34,842 --> 00:07:37,800 Và tôi thích cách bạn nói 1, 2, 3, bởi vì đó là một cách để nhìn nó. 166 00:07:37,800 --> 00:07:39,870 1, 2, 3, đó là một chuỗi của ba biểu tượng. 167 00:07:39,870 --> 00:07:42,005 Đó là hình ảnh mà chúng tôi bây giờ có lời cho. 168 00:07:42,005 --> 00:07:44,880 Và nếu bạn sắp xếp của đọc tất cả với nhau, một con người điển hình trong tiếng Anh 169 00:07:44,880 --> 00:07:46,600 sẽ nói 123. 170 00:07:46,600 --> 00:07:48,350 Và đó là sắp xếp của một khái niệm mức độ cao hơn, 171 00:07:48,350 --> 00:07:50,340 cảm thấy như một số hợp lý lớn. 172 00:07:50,340 --> 00:07:51,490 >> Nhưng làm thế nào chúng ta đạt được điều đó? 173 00:07:51,490 --> 00:07:54,640 Vâng, nó có thể là một thời gian kể từ khi bạn đã nghĩ về nó như thế này, 174 00:07:54,640 --> 00:07:56,680 nhưng trở lại trong ngày của tôi, tôi loại học được điều này 175 00:07:56,680 --> 00:08:01,030 như cột của 1, 10 của cột, và cột của 100. 176 00:08:01,030 --> 00:08:06,400 Vì vậy, như Lakisa nói, nó là 1, 2, 3, nhưng nó cũng là 123. 177 00:08:06,400 --> 00:08:08,700 Nhưng làm thế nào để chúng ta có được từ trước đây để sau này? 178 00:08:08,700 --> 00:08:12,340 >> Vâng, bạn thường sẽ làm trong cột của 100, tôi có một 1. 179 00:08:12,340 --> 00:08:14,794 Vì vậy, mà giống như đang nói 100 lần 1. 180 00:08:14,794 --> 00:08:16,210 Và sau đó trong cột 10, tôi có 2. 181 00:08:16,210 --> 00:08:18,464 Vì vậy, đó là giống như nói 10 lần 2. 182 00:08:18,464 --> 00:08:19,630 Trong cột của 1, tôi có 3. 183 00:08:19,630 --> 00:08:21,720 Vì vậy, đó là giống như nói 1 lần 3. 184 00:08:21,720 --> 00:08:24,290 >> Và nếu tôi thêm những điều với nhau, điều này, tất nhiên, 185 00:08:24,290 --> 00:08:27,470 100 cộng với 10 cộng với 3. 186 00:08:27,470 --> 00:08:31,750 Và oh, đó là lý do tại sao tôi có được điều này mức độ khái niệm cao hơn 123. 187 00:08:31,750 --> 00:08:37,220 Nó chỉ là toán học cơ bản, theo đó những ký hiệu có trọng lượng với họ, nếu bạn 188 00:08:37,220 --> 00:08:39,620 sẽ, giữ chỗ hoặc giá trị cột. 189 00:08:39,620 --> 00:08:42,090 Và một khi tôi nhân tất cả mọi thứ ra, tôi nhận được con số này. 190 00:08:42,090 --> 00:08:47,840 >> Vì vậy, có bao nhiêu bạn biết làm thế nào để nói chuyện binary-- 0 và 1's-- giống như một máy tính? 191 00:08:47,840 --> 00:08:50,410 OK, hoàn hảo, không có ai, hoặc không ai trong số bạn nghĩ rằng bạn làm. 192 00:08:50,410 --> 00:08:52,550 Nhưng tôi sẽ yêu cầu bạn thực sự biết điều này rồi. 193 00:08:52,550 --> 00:08:55,330 Chúng ta chỉ cần loại tinh chỉnh mô hình về tinh thần của chúng tôi một chút. 194 00:08:55,330 --> 00:08:57,250 Nhưng quá trình này là hoàn toàn giống nhau. 195 00:08:57,250 --> 00:09:01,460 >> Hãy để tôi rời khỏi này lên đó và thay vì kéo xuống một lúc. 196 00:09:01,460 --> 00:09:05,060 Trong thế giới của máy tính, chúng ta chỉ có 0 và 1. 197 00:09:05,060 --> 00:09:07,240 Và do đó, điều đó là sẽ thay đổi được những gì? 198 00:09:07,240 --> 00:09:10,920 Vâng, trong thế giới con người của tôi, hệ thống thập phân, tháng mười hai ý nghĩa 10, 199 00:09:10,920 --> 00:09:12,740 Tôi có bao nhiêu chữ số sắp xếp của tôi? 200 00:09:12,740 --> 00:09:15,270 201 00:09:15,270 --> 00:09:16,540 10, phải không? 202 00:09:16,540 --> 00:09:17,880 0 đến 9, tất nhiên. 203 00:09:17,880 --> 00:09:21,210 >> Và đó là lý do tại sao chúng tôi có nơi 10 và vị trí của 100. 204 00:09:21,210 --> 00:09:22,380 Ở đâu đó đến từ đâu? 205 00:09:22,380 --> 00:09:24,430 Vâng, đây là 10 với sức mạnh của 0. 206 00:09:24,430 --> 00:09:28,440 Đây là 10 với sức mạnh của 1, 10 với sức mạnh của 2, và vv. 207 00:09:28,440 --> 00:09:32,110 Bạn chỉ cần giữ nhân cột của bạn 10, bắt đầu với chỉ 1 208 00:09:32,110 --> 00:09:33,700 trong một bìa phải ở đây. 209 00:09:33,700 --> 00:09:35,490 >> Vì vậy, trong thế giới của máy vi tính, nếu bạn chỉ 210 00:09:35,490 --> 00:09:39,600 có ý nghĩa bi binary-- 2-- hoặc 0 và 1, chúng ta chỉ 211 00:09:39,600 --> 00:09:42,420 thực sự cần phải thay đổi các cơ sở của toán học mà. 212 00:09:42,420 --> 00:09:46,410 Vì vậy, nói cách khác, bây giờ chúng tôi sẽ chỉ có cột 1 và là-- 213 00:09:46,410 --> 00:09:51,270 nơi này là going-- cột của 2 cột 4, và có thể xa hơn nữa. 214 00:09:51,270 --> 00:09:52,250 Tại sao vậy? 215 00:09:52,250 --> 00:09:55,650 Vâng, đây là 2 sức mạnh 0-thứ. 216 00:09:55,650 --> 00:09:57,270 Đây là 2 trong 1. 217 00:09:57,270 --> 00:09:59,610 Đây là 2 đến 2, và như vậy. 218 00:09:59,610 --> 00:10:04,910 >> Vì vậy, trong khi ở đây, chúng tôi có 1, 10 của, 100, 1000 của, 10.000 nhân, 100.000 nhân, 1 219 00:10:04,910 --> 00:10:10,560 hàng triệu người, và vv, đây chúng tôi có 1, 2, 4, 8, 16, 32, 64. 220 00:10:10,560 --> 00:10:13,950 Bạn chỉ cần giữ nhân với 2, thay vì giữ nhân với 10. 221 00:10:13,950 --> 00:10:16,780 Vì vậy, bây giờ, nếu ghi bàn mặt là để đại diện cho 222 00:10:16,780 --> 00:10:20,240 số sử dụng chỉ có 0 và 1 của, chúng ta hãy xem xét làm thế nào chúng đạt được điều đó. 223 00:10:20,240 --> 00:10:26,540 >> Điều này, tất nhiên, là mô hình 0 0 0, nhưng những gì số khái niệm 224 00:10:26,540 --> 00:10:27,490 nó đại diện? 225 00:10:27,490 --> 00:10:35,430 Vâng, 4 lần 0 cộng với 2 lần 0 cộng 1 lần 0, chúng ta hãy thêm những với nhau. 226 00:10:35,430 --> 00:10:40,030 4 lần 0 là, tất nhiên, 0, cộng với 2 lần 0 là, tất nhiên, 0 cộng với 1 lần 0 227 00:10:40,030 --> 00:10:40,850 là, tất nhiên, 0. 228 00:10:40,850 --> 00:10:44,910 Vì vậy, ah, điều này thể hiện số con người chúng ta biết như là 0. 229 00:10:44,910 --> 00:10:47,810 >> Vâng, bây giờ, chúng ta hãy rất về phía trước một cách nhanh chóng nhanh chóng. 230 00:10:47,810 --> 00:10:53,600 Nếu tôi thay vì không đại diện cho 0 0 0, nhưng chúng ta hãy làm 1 0 1, 231 00:10:53,600 --> 00:10:57,010 đó có thể là như thế nào Lakisa, trước đó, sẽ chỉ phát âm nó 1 0 1. 232 00:10:57,010 --> 00:11:01,020 Nhưng bây giờ, làm thế nào để chúng tôi mang nó đến cao cấp số con người chúng ta có thể biết? 233 00:11:01,020 --> 00:11:04,220 Vì vậy, con số này là những gì? 234 00:11:04,220 --> 00:11:06,060 Đó là 5, số chúng ta biết là 5. 235 00:11:06,060 --> 00:11:06,870 >> Vâng, tại sao vậy? 236 00:11:06,870 --> 00:11:09,620 thực sự tốt, chúng ta có thể loại đi bộ qua đó có phương pháp 237 00:11:09,620 --> 00:11:14,880 4 lần 1, 2 lần 0, 1 lần 1. 238 00:11:14,880 --> 00:11:19,880 Thêm những cùng nhau, vì vậy đây là 4 cộng với 0 + 1. 239 00:11:19,880 --> 00:11:21,577 Và đó là, thực sự, 5. 240 00:11:21,577 --> 00:11:24,660 Vì vậy, nó nhận được một chút buồn tẻ tại làm số học một lần nữa và một lần nữa. 241 00:11:24,660 --> 00:11:26,300 Nhưng quá trình này là hoàn toàn giống nhau. 242 00:11:26,300 --> 00:11:28,380 >> Điều duy nhất mà có thay đổi trong thế giới của chúng tôi 243 00:11:28,380 --> 00:11:32,740 là cột của chúng tôi là 1, 2, 4, 8, 16, và vv, thay vì 1, 10, 100, 244 00:11:32,740 --> 00:11:33,740 1.000. 245 00:11:33,740 --> 00:11:40,000 Và đó chỉ là vì bảng chữ cái của chúng ta có thu nhỏ từ 0 đến 9 để chỉ 0-1. 246 00:11:40,000 --> 00:11:50,851 >> Vì vậy, như một chút đố ở đây, như thế nào sẽ bạn đại diện cho số 7 trong hệ nhị phân? 247 00:11:50,851 --> 00:11:51,350 0? 248 00:11:51,350 --> 00:11:53,490 Vâng, 0, bạn có nghĩa là 0 0 0? 249 00:11:53,490 --> 00:11:58,140 250 00:11:58,140 --> 00:11:59,693 Nói lại lần nữa, Karina. 251 00:11:59,693 --> 00:12:03,010 252 00:12:03,010 --> 00:12:03,550 Hoàn hảo. 253 00:12:03,550 --> 00:12:04,370 Tại sao vậy? 254 00:12:04,370 --> 00:12:08,530 Đó là hiệu quả 4 cộng với 2 cộng với 1. 255 00:12:08,530 --> 00:12:09,580 Vì vậy, tốt. 256 00:12:09,580 --> 00:12:14,364 >> Làm thế nào để chúng tôi đại diện một chút another-- thế nào về số 2? 257 00:12:14,364 --> 00:12:18,360 258 00:12:18,360 --> 00:12:20,690 Đóng, nhưng ngược. 259 00:12:20,690 --> 00:12:21,660 Vì vậy, đây là những gì? 260 00:12:21,660 --> 00:12:26,290 Là 4 cộng thêm 1, vì vậy đó là 5 lần nữa. 261 00:12:26,290 --> 00:12:28,310 >> Vì vậy what's-- Tôi xin lỗi, Karina? 262 00:12:28,310 --> 00:12:29,220 0 1 0. 263 00:12:29,220 --> 00:12:34,762 0 1 0 sẽ là 2, bởi vì một lần nữa, thậm chí nếu nó loại không nhảy ra ở bạn, 264 00:12:34,762 --> 00:12:35,470 chỉ cần làm toán. 265 00:12:35,470 --> 00:12:40,390 4 lần 0, 0, 2 lần 1 là 2, 1 lần 0 là 0. 266 00:12:40,390 --> 00:12:42,830 Vì vậy, đây là số chúng ta biết là 2. 267 00:12:42,830 --> 00:12:44,030 >> Làm thế nào về số 8? 268 00:12:44,030 --> 00:12:51,240 269 00:12:51,240 --> 00:12:52,730 Hm? 270 00:12:52,730 --> 00:12:53,330 Tốt. 271 00:12:53,330 --> 00:12:56,130 Vì vậy, chúng tôi loại cần giữ chỗ khác. 272 00:12:56,130 --> 00:12:59,570 Chúng ta cần 1 0 0 0. 273 00:12:59,570 --> 00:13:02,280 Và đó là sự thật của các loại của chúng tôi của hệ thống thập phân trường cũ. 274 00:13:02,280 --> 00:13:05,280 Làm thế nào để bạn đại diện cho số 1000? 275 00:13:05,280 --> 00:13:08,480 >> Vâng, bạn sẽ có vẻ là loại ở một vị trí khó khăn, 276 00:13:08,480 --> 00:13:10,390 nếu yêu cầu bạn để đại diện cho số 1000, 277 00:13:10,390 --> 00:13:14,960 bởi vì ngay cả khi bạn cung cấp cho mình như 9 trong số này, 9 trong số này, 0 trong số này, 278 00:13:14,960 --> 00:13:18,730 đó là số lớn nhất mà bạn có, bạn đã không hoàn toàn nhận được đến 1.000. 279 00:13:18,730 --> 00:13:26,920 Vì vậy, nếu bạn có 1000, bạn chỉ cần một vị trí, do đó bạn có thể làm 1 0 0 0, 280 00:13:26,920 --> 00:13:29,460 ergo số 1.000. 281 00:13:29,460 --> 00:13:34,200 >> Vì vậy, bây giờ, chúng ta hãy map loại này thảo luận mang lại phần cứng, 282 00:13:34,200 --> 00:13:37,470 đó một lần nữa, đầu vào là chỉ này ít dây cáp điện, điện 283 00:13:37,470 --> 00:13:39,300 đến và chảy ra. 284 00:13:39,300 --> 00:13:44,740 Và như vậy cho rằng để được ánh xạ từ đây qua đó, tốt, những gì chúng ta thực sự cần? 285 00:13:44,740 --> 00:13:49,460 Vâng, bạn có thể nghĩ ra được bên trong của một máy tính, một bó toàn bộ các bóng đèn, 286 00:13:49,460 --> 00:13:50,450 nếu bạn sẽ. 287 00:13:50,450 --> 00:13:52,040 Họ đang thực sự được gọi là transistor. 288 00:13:52,040 --> 00:13:55,121 Và bóng bán dẫn là chỉ chuyển mạch mà có thể được bật hoặc tắt. 289 00:13:55,121 --> 00:13:56,870 Vì vậy, bạn có thể nghĩ ra một transistor đó là trên 290 00:13:56,870 --> 00:14:00,730 được cho phép điện chảy và một bóng bán dẫn đó là off như dừng 291 00:14:00,730 --> 00:14:02,170 điện từ chảy. 292 00:14:02,170 --> 00:14:04,130 Và thay vì mất qua đèn ở đây, 293 00:14:04,130 --> 00:14:06,450 tại sao tôi không làm việc này của phong cách học mới. 294 00:14:06,450 --> 00:14:11,360 Vì vậy, đây có thể là 1, một đèn pin được vào, chỉ vừa đủ mặc dù. 295 00:14:11,360 --> 00:14:14,050 Và điều này có thể là 0, và bây giờ nó ra. 296 00:14:14,050 --> 00:14:18,277 >> Vì vậy, sử dụng thiết bị vật lý này, tôi bây giờ có thể đại diện cho hệ thống nhị phân. 297 00:14:18,277 --> 00:14:19,235 Tôi chỉ cần hai quốc gia. 298 00:14:19,235 --> 00:14:21,660 Nó không có vấn đề gì màu nó là hoặc những gì nó được. 299 00:14:21,660 --> 00:14:25,920 Tất cả những vấn đề là tôi có một nhà nước trên và một trạng thái tắt. 300 00:14:25,920 --> 00:14:30,605 Vì vậy, sử dụng điện thoại của tôi ở đây, tôi phải làm gì đại diện cho số chúng ta biết như là 0? 301 00:14:30,605 --> 00:14:34,490 302 00:14:34,490 --> 00:14:38,550 Hoặc đặt tương đương, những gì số tôi đại diện cho bây giờ? 303 00:14:38,550 --> 00:14:39,810 0, bởi vì các thiết bị tắt. 304 00:14:39,810 --> 00:14:41,560 >> Và nếu tôi làm điều này? 305 00:14:41,560 --> 00:14:43,583 Và bây giờ, tôi phải làm gì đại diện cho số 2? 306 00:14:43,583 --> 00:14:46,380 307 00:14:46,380 --> 00:14:50,930 Tôi có thể mượn điện thoại của bạn ở đây, như chúng tôi đã làm ngày hôm qua? 308 00:14:50,930 --> 00:14:58,490 Vì vậy, chúng ta hãy xem, vì vậy nếu tôi muốn đại diện cho số 2, đây là số 2? 309 00:14:58,490 --> 00:14:59,050 Không. 310 00:14:59,050 --> 00:15:02,250 số gì tôi vô tình đại diện ở đây? 311 00:15:02,250 --> 00:15:03,550 Điều này thực sự là số 3. 312 00:15:03,550 --> 00:15:05,008 >> Vì vậy mà một trong những Tôi muốn tắt? 313 00:15:05,008 --> 00:15:09,634 Chiếc điện thoại đen or-- tốt, nếu và-- điện thoại màu đen hoặc các điện thoại màu trắng? 314 00:15:09,634 --> 00:15:10,300 Chiếc điện thoại màu trắng. 315 00:15:10,300 --> 00:15:17,020 Vì vậy, nếu tôi tắt này và chúng tôi dòng nó lên trên đây, chúng ta có một 1 316 00:15:17,020 --> 00:15:19,487 tại chỗ của 2 và 0 ở vị trí của 1. 317 00:15:19,487 --> 00:15:21,195 Và như vậy bây giờ đại diện cho số 2. 318 00:15:21,195 --> 00:15:24,680 Và điều này, Tất nhiên, sẽ là số 3, bởi vì bây giờ cả hai đèn 319 00:15:24,680 --> 00:15:25,350 đang ở trên. 320 00:15:25,350 --> 00:15:27,480 >> Và tôi sẽ dừng lại ở đây, nhưng thật là hợp lý 321 00:15:27,480 --> 00:15:31,100 nếu tôi muốn đại diện cho các số 4 hoặc 8 hoặc cao hơn, 322 00:15:31,100 --> 00:15:32,529 Tôi sẽ cần điện thoại hơn. 323 00:15:32,529 --> 00:15:33,820 Nhưng đó là tất cả những gì đang xảy ra. 324 00:15:33,820 --> 00:15:37,800 Vì vậy, nếu bạn đã từng nghe nói rằng bên trong của là-- cảm ơn máy tính bạn-- 325 00:15:37,800 --> 00:15:42,269 là hàng triệu bóng bán dẫn, đó là chỉ hàng triệu thiết bị chuyển mạch nhỏ nhỏ. 326 00:15:42,269 --> 00:15:44,310 Và họ không phải là ánh sáng bóng đèn đó bật và tắt, 327 00:15:44,310 --> 00:15:48,340 nhưng họ không thể cho phép điện chảy đâu đó hoặc ngăn chặn nó. 328 00:15:48,340 --> 00:15:52,140 Và do đó, có hai của bạn states-- hoặc tắt, bật hoặc tắt. 329 00:15:52,140 --> 00:15:55,730 >> Vì vậy, chúng tôi dường như hiện nay có khả năng này 330 00:15:55,730 --> 00:16:00,590 để đại diện cho khái niệm này chúng tôi muốn trong phần cứng thực tế. 331 00:16:00,590 --> 00:16:05,520 Nhưng tất cả chúng ta có bây giờ là khả năng đại diện cho số nó sẽ có vẻ. 332 00:16:05,520 --> 00:16:08,580 Vì vậy, làm thế nào để chúng tôi đi về đại diện chữ của bảng chữ cái, mà 333 00:16:08,580 --> 00:16:12,310 cảm thấy như các loại tiếp theo của tính năng mà bạn sẽ muốn thêm vào một máy tính hiện đại 334 00:16:12,310 --> 00:16:14,280 một khi bạn có con số? 335 00:16:14,280 --> 00:16:16,930 >> Và quả thực, nếu bạn nghĩ về nó, lịch sử, máy tính 336 00:16:16,930 --> 00:16:19,426 đã được giới thiệu thực sự để phục vụ như máy tính số lượng. 337 00:16:19,426 --> 00:16:21,300 Nhưng tất nhiên, những ngày, họ làm nhiều hơn nữa. 338 00:16:21,300 --> 00:16:23,799 Ngay cả khi họ khởi động được, bạn thường thấy một hoặc nhiều từ. 339 00:16:23,799 --> 00:16:27,420 Vậy làm thế nào để bạn đại diện từ, nếu tất cả các bạn có được, một lần nữa, 340 00:16:27,420 --> 00:16:31,054 điện vào cuối của ngày, hoặc tương đương với 0 và 1 của? 341 00:16:31,054 --> 00:16:34,430 342 00:16:34,430 --> 00:16:35,690 >> Yeah. 343 00:16:35,690 --> 00:16:38,320 Vâng, tôi có nghĩa là, chúng tôi đã loại ngày hôm qua trong một số hình thức, 344 00:16:38,320 --> 00:16:40,200 nơi tại một số điểm, Tôi nghĩ rằng tôi tùy tiện 345 00:16:40,200 --> 00:16:46,741 nói rằng, nếu chúng ta muốn đại diện cho các chữ A, chúng tôi chỉ có thể gọi đó là một 1. 346 00:16:46,741 --> 00:16:49,990 Đó là trong bối cảnh của mật mã, đó chúng ta chỉ cần một số loại mã, 347 00:16:49,990 --> 00:16:51,160 một số loại bản đồ. 348 00:16:51,160 --> 00:16:56,680 >> Vì vậy có lẽ A sẽ được biểu diễn như một 1 và B sẽ được biểu diễn như một 2, 349 00:16:56,680 --> 00:17:01,560 và Z sẽ được đại diện như một 26, ví dụ. 350 00:17:01,560 --> 00:17:07,430 Và sau đó báo trước là nếu tôi định mã hóa ký tự trong email của tôi 351 00:17:07,430 --> 00:17:10,430 hoặc trong các tin nhắn văn bản của tôi như số, tất cả các bạn 352 00:17:10,430 --> 00:17:12,640 phải đồng ý sử dụng cùng một tập hợp các công ước. 353 00:17:12,640 --> 00:17:14,619 Và quả thực, thế giới đã làm chính xác điều đó. 354 00:17:14,619 --> 00:17:18,040 >> Có một hệ thống trên thế giới gọi là ASCII, American Standard 355 00:17:18,040 --> 00:17:21,640 Mã cho trao đổi thông tin, mà chỉ đơn giản là một quyết định một số năm 356 00:17:21,640 --> 00:17:25,720 trước rằng con người thực hiện mà quyết định rằng A sẽ bằng, không 357 00:17:25,720 --> 00:17:32,260 1, 2, và 26, và do đó là một forth-- ít different-- nhưng 65, 66, 67. 358 00:17:32,260 --> 00:17:34,010 Và tôi sẽ kéo lên một biểu đồ chỉ trong một khoảnh khắc. 359 00:17:34,010 --> 00:17:34,580 Nhưng đó là tùy ý. 360 00:17:34,580 --> 00:17:36,329 Nhưng nó không quan trọng rằng đó là tùy ý. 361 00:17:36,329 --> 00:17:38,620 Thế giới có chỉ là nhất quán. 362 00:17:38,620 --> 00:17:40,540 >> Bây giờ, gần đây hơn, có điều gì đó fancier 363 00:17:40,540 --> 00:17:45,430 gọi là Unicode, bởi vì loại của thế giới của nhận ra, sau khi phát minh ra máy vi tính, 364 00:17:45,430 --> 00:17:50,977 rằng có nhiều hơn tốt 256 biểu tượng trong thế giới 365 00:17:50,977 --> 00:17:53,560 rằng chúng ta có thể muốn để đại diện, đặc biệt là khi bạn giới thiệu 366 00:17:53,560 --> 00:17:58,420 ngôn ngữ châu Á và tượng trưng khác cần biểu cảm hơn bạn 367 00:17:58,420 --> 00:18:02,150 có thể phù hợp trong phiên bản sớm nhất của mã này, được gọi là ASCII. 368 00:18:02,150 --> 00:18:05,250 Vì vậy, thực sự cho phép Unicode bạn sử dụng nhiều hơn 0 và 2. 369 00:18:05,250 --> 00:18:08,830 Đặc biệt, bạn giữ nghe byte từ trong xã hội và thậm chí chỉ 370 00:18:08,830 --> 00:18:09,400 hôm qua. 371 00:18:09,400 --> 00:18:12,040 Và một byte là gì nữa? 372 00:18:12,040 --> 00:18:14,840 >> một byte là gì? 373 00:18:14,840 --> 00:18:15,700 Nó chỉ là 8 bit. 374 00:18:15,700 --> 00:18:17,150 Vậy điều đó thực sự có nghĩa gì? 375 00:18:17,150 --> 00:18:22,400 Vâng, đó có nghĩa là, trước đó, khi chúng tôi đã nói về nhị phân và tôi đã sử dụng 376 00:18:22,400 --> 00:18:28,010 tùy tiện ba bit khi chúng tôi nói về binary-- chỗ của 1 377 00:18:28,010 --> 00:18:33,600 nơi của 2, và cũng 4 của place--, một byte chỉ có nghĩa là bạn đang nói chuyện 378 00:18:33,600 --> 00:18:38,730 không theo đơn vị của ba nhưng bốn, năm, sáu, bảy tám, 379 00:18:38,730 --> 00:18:46,910 mà cho chúng ta nơi 8 của, của 16, 32, 64, và 128. 380 00:18:46,910 --> 00:18:50,010 >> Nói cách khác, một chút không phải là tất cả mà hữu ích một đơn vị đo lường, 381 00:18:50,010 --> 00:18:53,132 vì nó chỉ giống như một chút nhỏ mẩu thông tin, hoặc tắt. 382 00:18:53,132 --> 00:18:54,840 Vì vậy, cách đây vài năm, thế giới vừa quyết định 383 00:18:54,840 --> 00:18:59,060 nó hơi thuận tiện hơn để nói chuyện về byte, tám điều tại một thời điểm. 384 00:18:59,060 --> 00:19:01,670 Và như vậy do đó được sinh ra khái niệm về một byte. 385 00:19:01,670 --> 00:19:03,640 Và vì vậy chúng tôi có tám bit ở đây. 386 00:19:03,640 --> 00:19:06,810 >> Và hóa ra, quá, cho tương tự lý do, thế giới đã quyết định năm 387 00:19:06,810 --> 00:19:12,439 trước đó để đại diện cho một chữ ASCII, bạn sẽ sử dụng các đơn vị của 8 bit. 388 00:19:12,439 --> 00:19:14,230 Vì vậy, ngay cả khi bạn không cần nhiều, bạn 389 00:19:14,230 --> 00:19:18,130 luôn luôn sử dụng 8 bit để đại diện cho một lá thư của bảng chữ cái. 390 00:19:18,130 --> 00:19:20,950 Và điều này là thuận tiện, bởi vì sau đó nếu bạn 391 00:19:20,950 --> 00:19:28,720 nhận được thông báo có một 0 0 0 1 1 1 1 0 theo sau bởi một 1 1 1 0 1 0 392 00:19:28,720 --> 00:19:33,320 0 1, vì vậy nếu bạn nhận được 16 bit, thế giới có thể chỉ 393 00:19:33,320 --> 00:19:37,460 giả định rằng 8 đầu tiên là một lá thư và thứ hai 8 là một lá thư khác. 394 00:19:37,460 --> 00:19:39,240 >> Không quan trọng bao nhiêu có. 395 00:19:39,240 --> 00:19:41,460 Nó chỉ là vấn đề mà chúng tôi tất cả phù hợp 396 00:19:41,460 --> 00:19:42,950 khi chúng ta diễn giải các bit. 397 00:19:42,950 --> 00:19:44,377 Và điều này đã được chỉ là ngẫu nhiên. 398 00:19:44,377 --> 00:19:47,210 Điều đó có nghĩa là một cái gì đó, nhưng tôi đã không thực sự suy nghĩ về ý nghĩa của nó. 399 00:19:47,210 --> 00:19:49,620 >> Vì vậy, đó là một lời nói dối nhỏ màu trắng. 400 00:19:49,620 --> 00:19:51,990 Ban đầu, ASCII thực tế sử dụng chỉ có 7 bit. 401 00:19:51,990 --> 00:19:54,180 Và bit thứ tám là gọi là ASCII mở rộng. 402 00:19:54,180 --> 00:19:56,290 Nhưng vấn đề là, cuối cùng, giống nhau. 403 00:19:56,290 --> 00:19:58,850 thế giới nói chung tiêu chuẩn hóa trên 8 bit. 404 00:19:58,850 --> 00:20:04,290 >> Vì vậy, đây có vẻ như là một chút hạn chế, bởi vì tôi chỉ có thể 405 00:20:04,290 --> 00:20:07,970 đại diện vốn A, vốn B qua Z. vốn 406 00:20:07,970 --> 00:20:10,940 Nhưng thực sự không, nếu tôi đi với: có một loạt các nguồn tài nguyên 407 00:20:10,940 --> 00:20:13,695 trực tuyến, ví dụ, asciitable.com, điều này 408 00:20:13,695 --> 00:20:16,310 sẽ là một chút áp đảo lúc đầu. 409 00:20:16,310 --> 00:20:18,910 Nhưng tôi sẽ chỉ ra điều quan trọng ở đây. 410 00:20:18,910 --> 00:20:24,090 >> Điều này chỉ xảy ra với be-- và tôi sẽ walk-- chúng ta hãy xem, nếu tôi đi qua đây. 411 00:20:24,090 --> 00:20:27,990 Dưới đây là, trong số thập phân cột, số 65. 412 00:20:27,990 --> 00:20:32,201 Và vào chữ cái cột bên phải nhân vật, Chr, là chữ A. 413 00:20:32,201 --> 00:20:34,450 Và bạn có thể bỏ qua, bây giờ, tất cả mọi thứ ở giữa. 414 00:20:34,450 --> 00:20:36,769 Đây là hệ thập lục phân, bát phân, và một mã HTML. 415 00:20:36,769 --> 00:20:39,810 Để trang web này chỉ đang cố gắng để ném rất nhiều thông tin ở bạn cùng một lúc. 416 00:20:39,810 --> 00:20:42,970 Nhưng tất cả chúng ta quan tâm là số thập phân cột và cột nhân vật. 417 00:20:42,970 --> 00:20:46,190 >> Vì vậy, theo logic này, những gì là số cho rằng thế giới 418 00:20:46,190 --> 00:20:50,510 đã quyết định đại diện cho một chữ thường a? 419 00:20:50,510 --> 00:20:52,230 Yeah, 97. 420 00:20:52,230 --> 00:20:55,850 Và chỉ để gây nhầm lẫn có khả năng một chút, 421 00:20:55,850 --> 00:21:03,715 những số đã quyết định thế giới sẽ đại diện cho số 1? 422 00:21:03,715 --> 00:21:06,900 423 00:21:06,900 --> 00:21:10,910 Phải, vì we-- 49, có vẻ như ở đây, xuống ở phía dưới bên trái. 424 00:21:10,910 --> 00:21:12,320 >> Bây giờ, những gì tôi có nghĩa là bằng cách đó? 425 00:21:12,320 --> 00:21:14,830 Vì vậy, nó chỉ ra rằng trong các hệ thống máy tính, 426 00:21:14,830 --> 00:21:16,840 có chung một là Sự khác biệt cơ bản 427 00:21:16,840 --> 00:21:19,920 giữa một số và một nhân vật. 428 00:21:19,920 --> 00:21:22,330 Một số là những điều chúng tôi học ngày càng tăng lên khi 429 00:21:22,330 --> 00:21:23,830 chúng tôi là siêu trẻ ở trường lớp. 430 00:21:23,830 --> 00:21:25,110 Đó là điều bạn đếm với. 431 00:21:25,110 --> 00:21:30,220 Tuy nhiên, một nhân vật chỉ là một hình dạng, một hình tượng, có thể nói, trên màn hình. 432 00:21:30,220 --> 00:21:36,200 >> Bây giờ, con người chúng ta loại thấy cái gì đó trông như thế này. 433 00:21:36,200 --> 00:21:39,060 Và chúng ta nói, ồ, đó là số 2. 434 00:21:39,060 --> 00:21:44,999 Nhưng không, đó chỉ là một biểu tượng trông giống như những gì chúng ta biết là số 2. 435 00:21:44,999 --> 00:21:46,790 Và do đó, có này khác biệt cơ bản 436 00:21:46,790 --> 00:21:50,340 giữa số và ký tự thực tế. 437 00:21:50,340 --> 00:21:52,130 Đây là một con số. 438 00:21:52,130 --> 00:21:54,420 Nhưng nói chung, trong bối cảnh của một máy tính, 439 00:21:54,420 --> 00:21:56,809 nếu bạn thay vì nhìn thấy một cái gì đó giống như quoted-- này 440 00:21:56,809 --> 00:21:58,600 và bạn không luôn luôn phải nhìn thấy nó được trích dẫn, 441 00:21:58,600 --> 00:22:01,474 nhưng vì lợi ích của discussion-- nếu bạn nhìn thấy dấu ngoặc kép quanh số, 442 00:22:01,474 --> 00:22:02,730 này bây giờ là một nhân vật. 443 00:22:02,730 --> 00:22:06,330 Vì vậy, đây số 2 bên dưới mui xe bên trong máy tính 444 00:22:06,330 --> 00:22:12,220 sẽ được trình bày với một mô hình bit đại diện cho số lượng 445 00:22:12,220 --> 00:22:14,850 50 theo bảng xếp hạng trực tuyến. 446 00:22:14,850 --> 00:22:18,300 >> Tuy nhiên, nếu một máy tính chỉ nhìn thấy điều này, điều này 447 00:22:18,300 --> 00:22:24,580 sẽ được đại diện với mô hình của các bit 0 0 0 0 0 0 1 0. 448 00:22:24,580 --> 00:22:29,595 Trong khi đó, nhân vật này sẽ thực sự được đại diện as-- và bây giờ, 449 00:22:29,595 --> 00:22:34,710 Tôi đã suy nghĩ một chút harder-- vì vậy đây nhân vật sẽ được đại diện với 0 450 00:22:34,710 --> 00:22:39,080 0 1-- những gì tôi cần ở đây? 451 00:22:39,080 --> 00:22:44,450 0 0 1 1 0 0 1 0. 452 00:22:44,450 --> 00:22:45,480 Làm thế nào tôi làm điều này? 453 00:22:45,480 --> 00:22:49,580 Vâng đây là số 50, nếu bạn nhân nó bằng cách sử dụng các cột này, 454 00:22:49,580 --> 00:22:53,530 đây là số 2, vv đó là lý do tại sao có sự phân đôi này. 455 00:22:53,530 --> 00:22:55,850 >> Và đây chỉ là một là trêu ghẹo bây giờ cho các tính năng 456 00:22:55,850 --> 00:22:59,710 tồn tại trong ngôn ngữ lập trình rằng chúng tôi sẽ chạm vào một thời gian ngắn sau ngày hôm nay. 457 00:22:59,710 --> 00:23:01,950 Trong các ngôn ngữ lập trình, bạn có nói chung, 458 00:23:01,950 --> 00:23:04,495 nhưng không phải lúc nào, những điều gọi các kiểu dữ liệu khác nhau. 459 00:23:04,495 --> 00:23:06,870 Nói cách khác, một programmer-- khi anh ta hoặc cô ấy đang viết, 460 00:23:06,870 --> 00:23:11,150 một lập trình được quyết định trong những gì định dạng để lưu trữ dữ liệu của mình. 461 00:23:11,150 --> 00:23:14,120 Bạn có thể lưu trữ dữ liệu như số liệu, như số 2. 462 00:23:14,120 --> 00:23:17,940 Hoặc bạn có thể lưu trữ chúng như dây đàn, hoặc chuỗi ký tự 463 00:23:17,940 --> 00:23:21,550 mà bạn thường sẽ thể hiện với dấu ngoặc kép trong ngôn ngữ lập trình của bạn. 464 00:23:21,550 --> 00:23:25,230 >> Bạn có thể có những thứ called-- Tôi sẽ đơn giản hóa và gọi cho họ 465 00:23:25,230 --> 00:23:28,870 numbers-- thực để con số đó không phải là số nguyên như số 2, 466 00:23:28,870 --> 00:23:31,310 nhưng số thích 4,56. 467 00:23:31,310 --> 00:23:33,490 Vì vậy, con số thực tế còn có thể có điểm thập phân, 468 00:23:33,490 --> 00:23:36,340 vì vậy đó là một khác nhau cơ bản phần dữ liệu trong máy tính. 469 00:23:36,340 --> 00:23:41,920 Và sau đó bạn thậm chí có thể có các kiểu dữ liệu khác vẫn còn. 470 00:23:41,920 --> 00:23:45,810 Vì vậy, đó chỉ là một lời trêu ghẹo thực sự của đơn giản nhất của quyết định thiết kế 471 00:23:45,810 --> 00:23:50,960 mà một lập trình might thực hiện dưới mui xe. 472 00:23:50,960 --> 00:23:52,925 >> Vì vậy, bất kỳ câu hỏi chỉ được nêu ra? 473 00:23:52,925 --> 00:23:57,320 474 00:23:57,320 --> 00:23:59,860 Vì vậy, hãy cố gắng làm cho thực tế hơn một chút. 475 00:23:59,860 --> 00:24:02,120 Phần cứng này không phải là rất nhiều trong sử dụng nữa. 476 00:24:02,120 --> 00:24:07,420 Nhưng hầu hết mọi người trong phòng này có lẽ lớn lên với và vẫn sử dụng ổ đĩa cứng 477 00:24:07,420 --> 00:24:08,010 một cách nào đó. 478 00:24:08,010 --> 00:24:10,100 >> Mặc dù hầu hết các máy tính xách tay của chúng tôi không còn 479 00:24:10,100 --> 00:24:15,900 có các thiết bị hoạt động như thế này, thay vì máy tính xách tay ngày nay thường 480 00:24:15,900 --> 00:24:18,590 có ổ đĩa trạng thái rắn không có bộ phận chuyển động. 481 00:24:18,590 --> 00:24:22,840 Và đó có xu hướng đắt hơn, không may, nhưng nhanh hơn một chút 482 00:24:22,840 --> 00:24:27,230 và là-- tốt, thường xuyên, nhanh hơn rất nhiều, đó là một trong những lý do. 483 00:24:27,230 --> 00:24:28,980 Và cũng nó không tạo ra nhiều nhiệt. 484 00:24:28,980 --> 00:24:31,680 Nó có thể là nhỏ hơn, do đó, nó nói chung là một ròng dương. 485 00:24:31,680 --> 00:24:35,030 >> Nhưng điều này cho phép chúng tôi để bản đồ ít cụ thể hơn là những gì 486 00:24:35,030 --> 00:24:38,460 chúng ta đang nói về tại 0 và 1 của dân bây giờ đến một thiết bị vật lý. 487 00:24:38,460 --> 00:24:40,810 Đó là một điều cho tôi để nói chuyện về 0 và 1 trong các điều khoản 488 00:24:40,810 --> 00:24:43,990 điện thoại của tôi hay trừu tượng về các chuyển mạch được bật và tắt. 489 00:24:43,990 --> 00:24:45,340 Nhưng những gì về ổ đĩa cứng? 490 00:24:45,340 --> 00:24:48,495 Trong máy tính xách tay của bạn, nếu bạn có một cũ một hoặc trong máy tính để bàn của bạn, 491 00:24:48,495 --> 00:24:51,200 hoặc chắc chắn trong các máy chủ ngày hôm nay, nơi bạn có 492 00:24:51,200 --> 00:24:53,070 ổ đĩa cứng có một terabyte của không gian, 493 00:24:53,070 --> 00:24:55,560 4 terabytes của không gian, cũng có nghĩa là gì? 494 00:24:55,560 --> 00:24:59,560 >> Một ổ đĩa cứng với 1 terabyte các phương tiện không gian 495 00:24:59,560 --> 00:25:03,890 có 1 nghìn tỷ byte bên trong của nó bằng cách nào đó, 496 00:25:03,890 --> 00:25:10,450 hoặc tương đương 8 nghìn tỷ bit bên trong. 497 00:25:10,450 --> 00:25:16,240 1 terabyte sẽ là 8 terabit hoặc 1 nghìn tỷ bit, mà 498 00:25:16,240 --> 00:25:19,330 có nghĩa là nếu bạn có một khó khăn ổ đĩa, bạn có bằng cách nào đó 499 00:25:19,330 --> 00:25:22,400 hoặc khác một nghìn tỷ của 0 và 1 nhân bên trong của nó. 500 00:25:22,400 --> 00:25:25,360 Và nếu chúng ta chỉ có một cái nhìn tại một hình ảnh tùy ý của một ổ đĩa cứng 501 00:25:25,360 --> 00:25:30,110 đại diện, đây là điều khó ổ đĩa thường có thể trông giống như bên trong. 502 00:25:30,110 --> 00:25:32,600 >> Nó cũng là loại giống như một cầu thủ quay đĩa cũ 503 00:25:32,600 --> 00:25:35,350 nhưng nói chung với nhiều hồ sơ bên trong, do 504 00:25:35,350 --> 00:25:38,270 để speak-- nhiều đĩa cứng, như chúng được gọi, 505 00:25:38,270 --> 00:25:42,259 kim loại đĩa tròn, và sau đó một chút đọc đầu, 506 00:25:42,259 --> 00:25:43,550 giống như một máy thu âm cũ. 507 00:25:43,550 --> 00:25:46,589 Và đó là đầu đọc di chuyển trở lại và ra và bằng cách nào đó đọc các bit. 508 00:25:46,589 --> 00:25:49,380 Và những gì trên những đĩa cứng, thậm chí mặc dù con người chúng ta không thể nhìn thấy chúng, 509 00:25:49,380 --> 00:25:52,757 hoặc là trong thực tế hoặc trong ảnh này, có các hạt từ tính nhỏ nhỏ. 510 00:25:52,757 --> 00:25:55,090 Và thậm chí nếu bạn đã lâu quên các công trình điện như thế nào, 511 00:25:55,090 --> 00:25:57,550 một hạt từ tính đó là tính chung 512 00:25:57,550 --> 00:26:00,570 có một kết thúc phía bắc và phía nam end-- nên phía bắc và phía nam. 513 00:26:00,570 --> 00:26:03,000 Và do đó, trên thế giới chỉ quyết định một số thời gian trước đây 514 00:26:03,000 --> 00:26:06,570 rằng, nếu một giao thức từ cơ bản là liên kết như thế này, phía bắc-nam, 515 00:26:06,570 --> 00:26:07,610 hãy gọi đó là 1. 516 00:26:07,610 --> 00:26:10,470 Nếu đó là thay vì phía bắc, chúng ta hãy gọi đó là 0. 517 00:26:10,470 --> 00:26:13,350 Và vì vậy nếu bạn có ít bạn sử dụng một tỷ 518 00:26:13,350 --> 00:26:16,300 ít nhỏ từ particles-- và hy vọng, 519 00:26:16,300 --> 00:26:18,740 sự khéo léo trong phần cứng để lật những người xung quanh 520 00:26:18,740 --> 00:26:24,450 như bạn thấy fit-- nếu bạn muốn đại diện cho một bó toàn bộ 0, bạn 521 00:26:24,450 --> 00:26:28,120 chỉ cần 8 hạt từ tính tất cả các liên kết như thế này. 522 00:26:28,120 --> 00:26:30,330 Và nếu bạn muốn đại diện Tám 1, bạn chỉ 523 00:26:30,330 --> 00:26:33,170 cần 8 hạt từ tính liên kết trở lại trở lại để trở lại như thế này. 524 00:26:33,170 --> 00:26:35,515 >> Tôi có ý nghĩa gì bởi các hạt từ tính? 525 00:26:35,515 --> 00:26:38,390 Thành thật mà nói, tất cả những năm sau đó, điều đó vẫn đến để tâm trí của tôi 526 00:26:38,390 --> 00:26:42,139 là anh chàng này, nếu bạn lớn lên với điều này. 527 00:26:42,139 --> 00:26:43,930 Đây là một little-- cho những unfamiliar-- một 528 00:26:43,930 --> 00:26:47,810 ít đồ chơi thời thơ ấu mà có người đàn ông không có lông này ở đây 529 00:26:47,810 --> 00:26:51,690 đó có tất cả các màu đen nhỏ nhỏ các hạt từ tính đi kèm với nó. 530 00:26:51,690 --> 00:26:53,930 Và sử dụng mà dính màu đỏ, mà chỉ là một nam châm, 531 00:26:53,930 --> 00:26:58,460 bạn có thể sắp xếp cho anh ta một bộ ria mép hay lông mày hoặc lông hay bất cứ điều gì về anh ta. 532 00:26:58,460 --> 00:27:00,710 Vì vậy, trong thực tế, nếu chúng tôi phóng to trong, ví dụ, điều này 533 00:27:00,710 --> 00:27:02,950 là loại trò chơi bạn có thể chơi với Wooly Willy. 534 00:27:02,950 --> 00:27:06,570 >> Và điều này chỉ là để nói, những là các hạt từ tính lớn hơn nhiều 535 00:27:06,570 --> 00:27:09,890 hơn là thực sự trên một ổ đĩa cứng, và các hạt từ tính rất ít. 536 00:27:09,890 --> 00:27:11,640 Nhưng chúng ta hãy thực sự nhìn thấy sau đó nếu bạn có 537 00:27:11,640 --> 00:27:14,720 các hạt từ cực nhỏ trong một ổ cứng, làm thế nào bạn có thể thực sự 538 00:27:14,720 --> 00:27:19,090 sử dụng những người đại diện cho dữ liệu. 539 00:27:19,090 --> 00:27:20,070 >> [XEM LẠI VIDEO] 540 00:27:20,070 --> 00:27:24,190 >> -Các Ổ cứng là nơi máy tính của bạn cửa hàng hầu hết các dữ liệu thường trú của nó. 541 00:27:24,190 --> 00:27:27,170 Để làm được điều đó, các dữ liệu đi từ bộ nhớ RAM cùng 542 00:27:27,170 --> 00:27:31,720 với tín hiệu phần mềm cho các ổ cứng như thế nào để lưu trữ dữ liệu đó. 543 00:27:31,720 --> 00:27:36,570 Các mạch ổ cứng dịch những tín hiệu vào biến động điện áp. 544 00:27:36,570 --> 00:27:40,880 Những điều này, đến lượt nó, kiểm soát các ổ đĩa cứng di chuyển parts-- một số ít các chuyển động 545 00:27:40,880 --> 00:27:43,440 phần còn lại trong máy tính hiện đại. 546 00:27:43,440 --> 00:27:47,650 >> Một số của các tín hiệu điều khiển động cơ, mà quay đĩa kim loại tráng. 547 00:27:47,650 --> 00:27:50,980 Dữ liệu của bạn là thực sự lưu trữ trên các đĩa cứng. 548 00:27:50,980 --> 00:27:56,250 các tín hiệu khác di chuyển đầu đọc / ghi để đọc hoặc ghi dữ liệu trên đĩa cứng. 549 00:27:56,250 --> 00:28:00,100 máy móc thiết bị này là rất chính xác rằng một sợi tóc của con người có thể thậm chí không 550 00:28:00,100 --> 00:28:02,800 vượt qua giữa người đứng đầu và quay đĩa. 551 00:28:02,800 --> 00:28:04,887 Tuy nhiên, tất cả hoạt động ở tốc độ tuyệt vời. 552 00:28:04,887 --> 00:28:05,470 [END PLAYBACK] 553 00:28:05,470 --> 00:28:06,780 Và bạn có thể nhìn thấy ở đuôi cuối của video, 554 00:28:06,780 --> 00:28:08,340 nói chung có nhiều đĩa cứng. 555 00:28:08,340 --> 00:28:10,250 Và vì vậy mà đầu đọc không chỉ đọc trên. 556 00:28:10,250 --> 00:28:12,458 Đó là loại giống như ba hoặc hoặc nhiều hơn bốn đầu đọc 557 00:28:12,458 --> 00:28:14,920 rằng động thái như thế này, đọc dữ liệu đồng thời. 558 00:28:14,920 --> 00:28:17,407 >> Vì vậy, có rất nhiều phức tạp và phân loại của thời gian 559 00:28:17,407 --> 00:28:18,740 đó là tham gia vào một ổ đĩa cứng. 560 00:28:18,740 --> 00:28:21,920 Và điều đang quay thực sự darn nhanh chóng, do đó, có rất nhiều phức tạp. 561 00:28:21,920 --> 00:28:25,220 Nhưng chúng ta hãy phóng to một chút sâu hơn và thấy ở đâu các hạt từ tính 562 00:28:25,220 --> 00:28:27,370 và làm thế nào chúng tôi nhận được vào họ. 563 00:28:27,370 --> 00:28:28,750 >> [XEM LẠI VIDEO] 564 00:28:28,750 --> 00:28:31,830 >> nhìn -Let của những gì chúng ta chỉ thấy trong chuyển động chậm. 565 00:28:31,830 --> 00:28:35,230 Khi một xung ngắn gọn về điện được gửi đến đọc / ghi đầu, 566 00:28:35,230 --> 00:28:39,000 nó flips trên điện nhỏ cho một phần nhỏ của một giây. 567 00:28:39,000 --> 00:28:41,390 Các nam châm tạo ra một lĩnh vực, làm thay đổi 568 00:28:41,390 --> 00:28:44,600 sự phân cực của một nhỏ xíu, nhỏ xíu phần của các hạt kim loại 569 00:28:44,600 --> 00:28:46,960 mà áo bề mặt của mỗi platter. 570 00:28:46,960 --> 00:28:50,020 Một loạt mô hình của những nhỏ khu vực tính lên trên đĩa 571 00:28:50,020 --> 00:28:54,590 đại diện cho một bit dữ liệu trong hệ thống số nhị phân sử dụng máy tính. 572 00:28:54,590 --> 00:28:57,510 >> Bây giờ, nếu hiện tại được đưa ra chỉ một cách thức thông qua việc đọc / ghi đầu, 573 00:28:57,510 --> 00:28:59,899 khu vực được phân cực theo một hướng. 574 00:28:59,899 --> 00:29:01,940 Nếu hiện nay đều được gửi theo hướng ngược lại, 575 00:29:01,940 --> 00:29:04,020 sự phân cực đảo ngược. 576 00:29:04,020 --> 00:29:06,440 Làm thế nào để bạn nhận được dữ liệu từ đĩa cứng? 577 00:29:06,440 --> 00:29:08,190 Chỉ cần đảo ngược quá trình. 578 00:29:08,190 --> 00:29:10,440 Vì vậy, nó là các hạt trên đĩa mà có được hiện tại 579 00:29:10,440 --> 00:29:12,260 trong đọc / ghi đầu di chuyển. 580 00:29:12,260 --> 00:29:14,580 Đặt cùng hàng triệu các phân đoạn từ hóa, 581 00:29:14,580 --> 00:29:16,220 và bạn đã có một tập tin. 582 00:29:16,220 --> 00:29:21,030 >> Bây giờ, các mảnh của một tập tin duy nhất có thể rải rác trên tất cả các đĩa cứng của một ổ đĩa, 583 00:29:21,030 --> 00:29:24,060 loại giống như sự lộn xộn các giấy tờ trên bàn của bạn. 584 00:29:24,060 --> 00:29:27,590 Vì vậy, một tập tin thêm đặc biệt giữ theo dõi, nơi mọi thứ. 585 00:29:27,590 --> 00:29:30,440 Cậu không muốn bạn có một cái gì đó như thế? 586 00:29:30,440 --> 00:29:31,290 >> [END PLAYBACK] 587 00:29:31,290 --> 00:29:36,260 >> Vì vậy, được ám chỉ ở đó, có lẽ, là chủ đề đó từ ngày hôm qua sau khi xóa. 588 00:29:36,260 --> 00:29:38,380 Khi bạn xóa một tập tin, ngày hôm qua chúng tôi đã nói 589 00:29:38,380 --> 00:29:41,020 mà một máy tính thực sự làm cái gì, khi bạn kéo một cái gì đó 590 00:29:41,020 --> 00:29:44,110 vào thùng thùng hoặc thùng rác? 591 00:29:44,110 --> 00:29:45,150 Nó chỉ để quên nó. 592 00:29:45,150 --> 00:29:47,540 Nhưng của 0 và 1 của, các hạt từ tính 593 00:29:47,540 --> 00:29:50,640 mà nhìn như màu đỏ và màu xanh mọi thứ ở đây, hoặc cánh tay của tôi ở đây, 594 00:29:50,640 --> 00:29:52,350 vẫn còn đó trên ổ đĩa cứng. 595 00:29:52,350 --> 00:29:56,090 >> Và như vậy có tồn tại software-- Norton Utilities và năm qua 596 00:29:56,090 --> 00:29:58,159 và hiện đại hơn khác software-- rằng chỉ 597 00:29:58,159 --> 00:30:01,200 sẽ quét một ổ đĩa cứng toàn bộ tìm kiếm ở tất cả những người của 0 và 1, bởi vì nó 598 00:30:01,200 --> 00:30:06,890 chỉ ra rằng hầu hết các định dạng khác tập các tài liệu Word, Excel, hình ảnh, 599 00:30:06,890 --> 00:30:10,380 Video files-- tất cả đều có một số mô hình được phổ biến trong số đó. 600 00:30:10,380 --> 00:30:12,550 Mỗi tập tin video có thể được của một video khác nhau, 601 00:30:12,550 --> 00:30:14,870 nhưng một số đầu tiên bit là thường là như nhau. 602 00:30:14,870 --> 00:30:16,790 Hoặc vài bit cuối cùng thường giống nhau. 603 00:30:16,790 --> 00:30:19,910 >> Và do đó, với xác suất cao, bạn có thể tìm kiếm những người mẫu. 604 00:30:19,910 --> 00:30:23,700 Và thậm chí nếu các tập tin đã bị lãng quên, bạn có thể nói với xác suất cao, 605 00:30:23,700 --> 00:30:28,460 nhưng điều này có vẻ giống như một tài liệu Word, cho phép phục hồi nó và bỏ quên nó, 606 00:30:28,460 --> 00:30:28,990 nếu bạn sẽ. 607 00:30:28,990 --> 00:30:32,330 Và đó là cách bạn có thể phục hồi dữ liệu đó là một trong hai đã vô tình 608 00:30:32,330 --> 00:30:36,560 xóa hoặc bị xóa hoặc cố ý xóa cho bất kỳ mục đích. 609 00:30:36,560 --> 00:30:42,530 >> Ngược lại, xóa an toàn những gì trong bối cảnh của một bức tranh như thế này? 610 00:30:42,530 --> 00:30:44,059 Chính xác, làm cho tất cả chúng ngẫu nhiên. 611 00:30:44,059 --> 00:30:46,350 Vì vậy, nó loại di chuyển một số chúng xuống, một số trong số họ lên, 612 00:30:46,350 --> 00:30:49,433 lá số của họ không thay đổi, và thường làm cho tiếng ồn ngẫu nhiên trong số đó, 613 00:30:49,433 --> 00:30:52,960 hoặc chỉ có thể làm cho tất cả họ có 0 hay tất cả chúng 1. 614 00:30:52,960 --> 00:30:56,350 Và rằng quá có thể nói chung chà dữ liệu của bạn đi. 615 00:30:56,350 --> 00:31:00,160 >> Vì vậy, chúng ta hãy trở lại với doanh nghiệp về vấn đề này của tư duy tính toán, theo đó 616 00:31:00,160 --> 00:31:03,270 chúng tôi có các đầu vào công thức. 617 00:31:03,270 --> 00:31:06,390 Và các thuật toán cho bạn kết quả đầu ra cuối cùng. 618 00:31:06,390 --> 00:31:09,270 Chúng tôi tập trung tại đầu vào và kết quả đầu ra, bởi vì bây giờ, tôi 619 00:31:09,270 --> 00:31:12,159 khẳng định chúng ta có một cách đại diện cho đầu vào và đầu ra. 620 00:31:12,159 --> 00:31:13,450 Chúng tôi chỉ sẽ sử dụng hệ nhị phân. 621 00:31:13,450 --> 00:31:15,910 >> Và không có vấn đề gì chúng tôi muốn đại diện cho ngày hôm nay, 622 00:31:15,910 --> 00:31:20,230 cho dù đó là một con số hoặc một lá thư hoặc hàng ngàn đó trong một cuốn sách điện thoại 623 00:31:20,230 --> 00:31:23,210 hoặc hình ảnh hoặc phim, cuối cùng trong ngày, đó là tất cả 0 và 1. 624 00:31:23,210 --> 00:31:26,640 Và tôi cho rằng, mặc dù điều này là một thế giới siêu đơn giản chỉ với 0 của 625 00:31:26,640 --> 00:31:28,240 và 1, chúng ta có thể xây dựng bản thân mình lên. 626 00:31:28,240 --> 00:31:32,210 Và chúng tôi đã nhìn thấy một ví dụ về rằng với chữ cho đến nay. 627 00:31:32,210 --> 00:31:35,615 >> Vì vậy, hãy tập trung tại trên này thành phần trung lưu, một thuật toán. 628 00:31:35,615 --> 00:31:38,190 Và chúng ta hãy quay trở lại này Ví dụ của Mike Smith. 629 00:31:38,190 --> 00:31:41,689 Vì vậy, trong danh bạ điện thoại này, mà phải thừa nhận, chúng tôi không sử dụng quá nhiều nữa, 630 00:31:41,689 --> 00:31:42,980 có một vấn đề cần được giải quyết. 631 00:31:42,980 --> 00:31:45,040 Chúng tôi muốn tìm một người như Mike Smith. 632 00:31:45,040 --> 00:31:47,520 >> Và những gì tôi có thể làm gì để tìm Mike? 633 00:31:47,520 --> 00:31:51,197 Vâng, tôi chỉ có thể mở ra này cuốn sách, bắt đầu từ trang đầu tiên, 634 00:31:51,197 --> 00:31:52,780 và nhận ra, oh, tôi là trong phần A. 635 00:31:52,780 --> 00:31:53,510 Mike không có ở đó. 636 00:31:53,510 --> 00:31:55,510 Tôi cần phần S cho Smith. 637 00:31:55,510 --> 00:31:58,192 Vì vậy, chỉ giữ chuyển một trang tại một thời điểm. 638 00:31:58,192 --> 00:32:00,900 Hãy để tôi giả vờ rằng đây là tất cả trang trắng và không có các trang vàng, 639 00:32:00,900 --> 00:32:02,910 bởi vì chúng ta sẽ không tìm thấy Mike trong những trang vàng anyway. 640 00:32:02,910 --> 00:32:04,034 Nhưng tôi đang ở trong các trang trắng. 641 00:32:04,034 --> 00:32:05,340 Và bây giờ, tôi đang ở trong phần B. 642 00:32:05,340 --> 00:32:06,810 Tôi vẫn chưa tìm thấy anh ta. 643 00:32:06,810 --> 00:32:08,890 Vì vậy, tôi giữ chuyển một trang tại một thời điểm. 644 00:32:08,890 --> 00:32:10,130 >> Đây là một thuật toán. 645 00:32:10,130 --> 00:32:12,440 Đó là một tập hợp các hướng dẫn để giải quyết một số vấn đề. 646 00:32:12,440 --> 00:32:16,480 Nói cách khác, nhìn vào trang, nếu Mike không phải vào nó, 647 00:32:16,480 --> 00:32:20,020 lật trang, và lặp đi lặp lại Một lần nữa và một lần nữa, 648 00:32:20,020 --> 00:32:21,760 lý tưởng nhìn xuống như bạn đang làm nó. 649 00:32:21,760 --> 00:32:24,120 Vì vậy, là thuật toán này, quá trình này, đúng không? 650 00:32:24,120 --> 00:32:27,400 651 00:32:27,400 --> 00:32:28,830 >> Lấy làm tiếc. 652 00:32:28,830 --> 00:32:30,056 Không, tôi nghe một số nos. 653 00:32:30,056 --> 00:32:33,250 654 00:32:33,250 --> 00:32:36,125 OK, nhưng nó hợp-- yeah, nó chắc chắn tẻ nhạt. 655 00:32:36,125 --> 00:32:39,000 Giống như, chúng ta sẽ ở đây cả ngày nếu tôi tiếp tục tìm cho Mike ở tốc độ này. 656 00:32:39,000 --> 00:32:41,430 Nhưng hãy để tôi khẳng định nó là đúng. 657 00:32:41,430 --> 00:32:43,850 Đó là ngu ngốc, nhưng đó là chính xác. 658 00:32:43,850 --> 00:32:47,209 >> Vào cuối ngày, miễn là nó có thể mất, tôi sẽ tìm thấy Mike nếu ông ở trong đó 659 00:32:47,209 --> 00:32:48,250 và tôi chú ý. 660 00:32:48,250 --> 00:32:50,230 Và cuối cùng tôi đến trang của mình. 661 00:32:50,230 --> 00:32:52,890 Và nếu tôi nhận được quá xa, nếu Tôi nhận được phần T, 662 00:32:52,890 --> 00:32:55,900 sau đó tôi hơi có thể tối ưu hóa và chỉ nói, hm, làm tất cả. 663 00:32:55,900 --> 00:32:57,980 Tôi thậm chí không cần phải lãng phí thời gian đi đến Z. 664 00:32:57,980 --> 00:33:00,010 Nhưng điều này là rất tiếp cận tuyến tính, nếu bạn 665 00:33:00,010 --> 00:33:03,370 sẽ, rất loại trái sang phải cách tiếp cận, một đường thẳng. 666 00:33:03,370 --> 00:33:05,560 Và đúng nhưng chậm. 667 00:33:05,560 --> 00:33:09,250 >> Vì vậy, tôi nhớ từ trường lớp, sắp xếp của một tối ưu hóa từ một học sinh lớp đầu tiên, 668 00:33:09,250 --> 00:33:13,756 nơi tôi đã học được cách để đếm không bởi những người mà bởi twos-- do đó, 2, 4, 6. 669 00:33:13,756 --> 00:33:15,630 Đó là A, rất nhiều khó khăn hơn để làm, nhưng trong lý thuyết, đó là 670 00:33:15,630 --> 00:33:20,149 faster-- 8, 10, 12, 14, và vv. 671 00:33:20,149 --> 00:33:21,190 Làm thế nào về thuật toán? 672 00:33:21,190 --> 00:33:23,150 Có hiệu quả hơn? 673 00:33:23,150 --> 00:33:23,880 Là nó nhanh hơn? 674 00:33:23,880 --> 00:33:25,365 >> Đung Đó là hiệu quả. 675 00:33:25,365 --> 00:33:28,560 >> DAVID Malan: Yeah, vì vậy nó def-- nó nghĩa là nhanh gấp hai lần, giả sử tôi 676 00:33:28,560 --> 00:33:30,170 không bị vấp với ngón tay của tôi. 677 00:33:30,170 --> 00:33:32,294 Đó là nhanh gấp hai lần, bởi vì Tôi quay qua hai 678 00:33:32,294 --> 00:33:36,560 trang cùng một lúc thay vì một, nhưng nó tiềm ẩn trong chính xác, bởi vì tại sao? 679 00:33:36,560 --> 00:33:37,852 >> Đung Bạn đang bỏ qua một số. 680 00:33:37,852 --> 00:33:41,185 DAVID Malan: Đúng vậy, nếu những gì xảy ra Mike được sandwiched-- có lẽ khi tôi sau 681 00:33:41,185 --> 00:33:44,370 trong sổ điện thoại, Mike sẽ xảy ra là kẹp giữa hai trang này, 682 00:33:44,370 --> 00:33:46,720 và tôi chỉ nhắm mắt bỏ qua nó. 683 00:33:46,720 --> 00:33:48,490 Vì vậy, chúng ta cần một chút sửa chữa đó. 684 00:33:48,490 --> 00:33:51,290 Khi tôi nhấn phần T, tôi có thể không chỉ tự tin nói, 685 00:33:51,290 --> 00:33:52,420 chúng tôi không tìm thấy Mike Smith. 686 00:33:52,420 --> 00:33:53,770 Tôi có lẽ phải tăng gấp đôi lại. 687 00:33:53,770 --> 00:34:00,210 Hoặc trong thực tế, một khi tôi đạt được một ai đó tên là S-N, thay vì S-M cho Smith, 688 00:34:00,210 --> 00:34:02,790 ngay lập tức, tôi có thể tăng gấp đôi trở lại, bởi vì có lẽ anh 689 00:34:02,790 --> 00:34:03,900 là ở trang trước. 690 00:34:03,900 --> 00:34:05,070 >> Nhưng tôi không phải tăng gấp đôi trở lại đến nay. 691 00:34:05,070 --> 00:34:08,030 Về lý thuyết, nếu tôi làm điều đó ở bên phải thời gian, tôi chỉ cần đi trở lại một trang. 692 00:34:08,030 --> 00:34:10,139 Vì vậy, nó chỉ thêm một bước. 693 00:34:10,139 --> 00:34:13,070 Vì vậy, tôi đã đi nhanh gấp hai lần, nhưng chi phí cho tôi một trang thêm. 694 00:34:13,070 --> 00:34:14,699 Nhưng mà cảm thấy như một chiến thắng net. 695 00:34:14,699 --> 00:34:17,230 >> Nhưng đây không phải là cách hầu hết mọi người trong phòng này sẽ giải quyết vấn đề này. 696 00:34:17,230 --> 00:34:20,313 Điều gì sẽ là một người tiêu biểu, có thể một vài năm trước đây làm, tìm Mike Smith? 697 00:34:20,313 --> 00:34:22,900 698 00:34:22,900 --> 00:34:24,800 Vâng, không tìm thấy Mike. 699 00:34:24,800 --> 00:34:27,190 Tôi làm gì? 700 00:34:27,190 --> 00:34:31,027 Vì vậy, gần thêm một chút, nhưng tôi làm know-- gì là sự thật về một cuốn sách điện thoại? 701 00:34:31,027 --> 00:34:32,110 Đung Đó là tuần tự. 702 00:34:32,110 --> 00:34:32,760 DAVID Malan: Đó là tuần tự. 703 00:34:32,760 --> 00:34:33,750 Đó là chữ cái. 704 00:34:33,750 --> 00:34:36,540 Và như vậy nếu anh ở phần M, Mike rõ ràng là bên phải, 705 00:34:36,540 --> 00:34:39,949 Tôi nghĩa là có thể xé các vấn đề trong half-- 706 00:34:39,949 --> 00:34:44,360 nó thường dễ dàng hơn so với nước mắt mà-- các vấn đề trong một nửa và vứt nó đi, 707 00:34:44,360 --> 00:34:47,627 vì vậy mà bây giờ, tôi có một vấn đề đó là không còn 1.000 pages-- đó là khó khăn, 708 00:34:47,627 --> 00:34:50,210 bởi vì tôi nghĩ rằng tôi thực sự xé danh bạ điện thoại này không time-- 709 00:34:50,210 --> 00:34:52,219 1.000 trang, nhưng 500. 710 00:34:52,219 --> 00:34:54,750 >> Vì vậy, vấn đề là nghĩa đen nửa là lớn. 711 00:34:54,750 --> 00:34:58,170 Và đó là khá hấp dẫn, vì với các thuật toán trước đây của tôi, phiên bản 712 00:34:58,170 --> 00:35:02,870 1 và 2, tôi đã chỉ làm cho vấn đề một trang nhỏ hơn, hai trang nhỏ hơn 713 00:35:02,870 --> 00:35:03,470 tại một thời điểm. 714 00:35:03,470 --> 00:35:07,230 Trong khi đó, bây giờ, tôi đã làm cho nó 500 trang nhỏ hơn tất cả cùng một lúc. 715 00:35:07,230 --> 00:35:10,089 >> OK, vì vậy bây giờ, Karim đề xuất rằng tôi đi đến nửa bên phải. 716 00:35:10,089 --> 00:35:12,380 Vì vậy, tôi sẽ đi khoảng vào giữa, cho hoặc mất. 717 00:35:12,380 --> 00:35:15,185 Và nếu tôi đã làm điều này bằng toán học, Tôi có thể đi ngay vào giữa. 718 00:35:15,185 --> 00:35:17,060 Và bây giờ, tôi nhận ra, oh, Tôi đang ở phần T. 719 00:35:17,060 --> 00:35:18,280 Tôi thực sự đã đi quá xa. 720 00:35:18,280 --> 00:35:21,670 >> Nhưng tôi có thể, một lần nữa, xé vấn đề trong một nửa, vứt nó đi. 721 00:35:21,670 --> 00:35:23,330 Và byte của tôi không phải là lớn. 722 00:35:23,330 --> 00:35:28,780 Nó chỉ có, cái gì, 256 trang hoặc 250 trang, cho hay phải mất ngay bây giờ. 723 00:35:28,780 --> 00:35:31,570 Nhưng nó vẫn còn cách hơn hơn một trang hoặc hai trang. 724 00:35:31,570 --> 00:35:33,345 >> Và vì vậy bây giờ, tôi đi khoảng vào giữa. 725 00:35:33,345 --> 00:35:35,330 Oh, tôi đã không đi khá xa đủ bây giờ. 726 00:35:35,330 --> 00:35:37,880 Vì vậy, tôi lặp lại, lặp lại, lặp lại, lặp lại, cho đến khi tôi hy vọng 727 00:35:37,880 --> 00:35:40,360 còn lại chỉ có một trang. 728 00:35:40,360 --> 00:35:44,000 >> Vì vậy, mời các câu hỏi, nếu tôi bắt đầu với khoảng 1.000 trang, 729 00:35:44,000 --> 00:35:47,340 bao nhiêu bước đã làm nó mất tôi với phiên bản 1 của thuật toán của tôi? 730 00:35:47,340 --> 00:35:50,420 Vâng, nếu Mike là trong S phần, trong trường hợp xấu nhất, 731 00:35:50,420 --> 00:35:52,630 đó là khá gần cuối của bảng chữ cái. 732 00:35:52,630 --> 00:35:56,559 Vì vậy, nếu các cuốn sách điện thoại có 1.000 trang, Tôi sẽ tìm thấy Mike trong 1.000 trang, 733 00:35:56,559 --> 00:35:57,100 cho hoặc mất. 734 00:35:57,100 --> 00:35:59,750 Có lẽ nó giống như 800 hay như vậy, nhưng nó khá gần 1.000. 735 00:35:59,750 --> 00:36:01,680 >> Trong khi đó, trong lần thứ hai thuật toán, bao nhiêu 736 00:36:01,680 --> 00:36:06,840 Trang quay tối đa có thể tôi yêu cầu để tìm Mike Smith? 737 00:36:06,840 --> 00:36:09,970 Có 1.000 trang, nhưng tôi làm cho họ hai người tại một thời điểm. 738 00:36:09,970 --> 00:36:13,045 Phải, để tối đa như 500ish, vì nếu tôi đi qua các cuốn sách điện thoại toàn, 739 00:36:13,045 --> 00:36:14,170 tại thời điểm đó, tôi có thể dừng lại. 740 00:36:14,170 --> 00:36:16,669 Nhưng tôi có thể cạo một vài bằng chỉ dừng lại ở phần T. 741 00:36:16,669 --> 00:36:19,880 Nhưng đó là ở trường hợp xấu nhất 500 trang. 742 00:36:19,880 --> 00:36:24,710 >> Vì vậy, bao nhiêu lần tôi có thể chia một 1,00o trang danh bạ điện thoại trong nửa lại 743 00:36:24,710 --> 00:36:30,450 và một lần nữa và again-- từ 1000 500 250 đến 125? 744 00:36:30,450 --> 00:36:32,250 Bao lâu trước khi tôi nhấn một trang? 745 00:36:32,250 --> 00:36:35,510 746 00:36:35,510 --> 00:36:36,370 Vâng, đó là khoảng 10. 747 00:36:36,370 --> 00:36:40,780 Tùy thuộc vào làm tròn và như vậy, đó là khoảng 10 trang tổng cần phải được bật 748 00:36:40,780 --> 00:36:43,290 hoặc sách điện thoại cần phải được xé. 749 00:36:43,290 --> 00:36:44,710 >> Vì vậy, đó là khá mạnh mẽ. 750 00:36:44,710 --> 00:36:48,170 Chúng tôi bắt đầu với một vấn đề 1.000 trang trong tất cả ba tầng. 751 00:36:48,170 --> 00:36:51,850 Nhưng trong thuật toán đầu tiên, nó đưa tôi, trường hợp xấu nhất, 1.000 trang 752 00:36:51,850 --> 00:36:52,740 quay sang tìm Mike. 753 00:36:52,740 --> 00:36:55,590 Thuật toán thứ hai, 500 trang tìm Mike. 754 00:36:55,590 --> 00:36:58,480 Thuật toán thứ ba, 10 trang để tìm Mike. 755 00:36:58,480 --> 00:37:00,230 Và nó thậm chí còn nhiều hơn mạnh mẽ khi bạn nghĩ 756 00:37:00,230 --> 00:37:01,860 về sắp xếp của một kịch bản ngược lại. 757 00:37:01,860 --> 00:37:05,680 Giả sử rằng công ty điện thoại tiếp theo năm có thể sáp nhập hai thị trấn với nhau, 758 00:37:05,680 --> 00:37:08,550 và danh bạ điện thoại là bất ngờ này dày, thay vì điều này mà, 759 00:37:08,550 --> 00:37:12,470 quá 2.000 trang thay vì 1.000. 760 00:37:12,470 --> 00:37:15,640 Vâng, thuật toán đầu tiên tôi tìm kiếm Mike Smith trong một cuốn sách điện thoại 2.000 trang, 761 00:37:15,640 --> 00:37:21,460 trường hợp nặng hơn, nó sẽ mất có bao nhiêu trang biến trong năm tới? 762 00:37:21,460 --> 00:37:24,800 >> Điện thoại cuốn sách là 2.000 trang, vậy-- tốt, không một nhiều hơn. 763 00:37:24,800 --> 00:37:29,540 Nếu cuốn sách điện thoại gấp đôi dày các thuật toán đầu tiên, thuật toán đầu tiên, 764 00:37:29,540 --> 00:37:30,380 2000, phải không? 765 00:37:30,380 --> 00:37:33,005 Trong trường hợp xấu nhất, Mike thực sự là đóng đến cuối của cuốn sách, 766 00:37:33,005 --> 00:37:34,110 vì vậy nó là 2.000 lượt trang. 767 00:37:34,110 --> 00:37:38,070 Thuật toán thứ hai đi theo twos, như 1.000 trang. 768 00:37:38,070 --> 00:37:41,490 >> Nhưng làm thế nào về vị trí thứ ba của tôi và thuật toán gần đây nhất? 769 00:37:41,490 --> 00:37:44,950 Nếu các công ty điện thoại tăng gấp đôi số trang từ 1.000 đến 2.000, 770 00:37:44,950 --> 00:37:47,770 bao nhiêu lần cần tôi xé rằng cuốn sách trong nửa để tìm Mike? 771 00:37:47,770 --> 00:37:48,710 >> Đung Chỉ cần một. 772 00:37:48,710 --> 00:37:51,001 >> DAVID Malan: Chỉ cần một nhiều hơn, bởi vì với một giọt nước mắt trang, 773 00:37:51,001 --> 00:37:53,270 Tôi nghĩa là có thể phân chia và chinh phục, nếu bạn muốn, 774 00:37:53,270 --> 00:37:57,410 rằng vấn đề trong nửa lấy một vết cắn lớn ra khỏi nó. 775 00:37:57,410 --> 00:38:01,420 Và vì vậy đây là một ví dụ về hiệu quả và cho là một thuật toán 776 00:38:01,420 --> 00:38:04,100 mà tất cả chúng ta loại trực giác quen thuộc. 777 00:38:04,100 --> 00:38:07,780 Nhưng nó chỉ là đúng như các thuật toán khác của tôi 778 00:38:07,780 --> 00:38:09,630 với tinh chỉnh cho các thuật toán thứ hai, 779 00:38:09,630 --> 00:38:11,290 nhưng nó rất hiệu quả hơn nhiều. 780 00:38:11,290 --> 00:38:14,030 >> Và trên thực tế, những gì một máy tính nhà khoa học, hoặc lần lượt một lập trình viên, 781 00:38:14,030 --> 00:38:17,580 thường sẽ làm gì khi viết đang cố gắng tìm ra, 782 00:38:17,580 --> 00:38:19,960 tất cả các quyền, tôi không muốn tôi chương trình chỉ được chính xác, 783 00:38:19,960 --> 00:38:23,220 Tôi cũng muốn nó được hiệu quả và giải quyết vấn đề tốt. 784 00:38:23,220 --> 00:38:26,450 Hãy tưởng tượng trong thế giới thực ngày hôm nay, như chỉ số của Google, tìm kiếm 785 00:38:26,450 --> 00:38:31,580 như tỷ trang, hãy tưởng tượng nếu họ sử dụng các thuật toán đầu tiên để tìm mèo 786 00:38:31,580 --> 00:38:34,620 giữa một tỷ pages-- nhìn trang đầu tiên trong cơ sở dữ liệu của họ, 787 00:38:34,620 --> 00:38:37,700 thứ hai, thứ ba, chỉ cần tìm kiếm cho một con mèo, tìm kiếm một con mèo. 788 00:38:37,700 --> 00:38:40,350 Đó là khá darn chậm nó sẽ có vẻ. 789 00:38:40,350 --> 00:38:43,170 Thay vào đó họ có thể sử dụng một cái gì đó gọi là tìm kiếm nhị phân, mà 790 00:38:43,170 --> 00:38:47,420 không bi coincidence-- nghĩa hai, chúng tôi giữ phân chia một cái gì đó trong 2, trong half-- 791 00:38:47,420 --> 00:38:50,205 họ có thể sử dụng tìm kiếm nhị phân và có thể tìm thấy mèo thậm chí nhanh hơn, 792 00:38:50,205 --> 00:38:51,830 hoặc bất cứ điều gì nó là bạn đang tìm kiếm. 793 00:38:51,830 --> 00:38:54,125 >> Và thẳng thắn, có thậm chí các thuật toán fancier 794 00:38:54,125 --> 00:38:56,250 mà làm nhiều hơn là chỉ chia điều trong nửa 795 00:38:56,250 --> 00:38:58,180 để tìm thông tin nhanh chóng. 796 00:38:58,180 --> 00:39:00,880 Và chúng tôi sẽ nói một chút về những người sau khi ăn trưa ngày hôm nay. 797 00:39:00,880 --> 00:39:02,640 Vì vậy, hãy để tôi chỉ cần cố gắng để đại diện này. 798 00:39:02,640 --> 00:39:05,380 Chúng tôi không cần phải đi vào bất kỳ môn toán hoặc số thực tế. 799 00:39:05,380 --> 00:39:07,070 Chúng ta có thể nói về điều này một cách trừu tượng. 800 00:39:07,070 --> 00:39:11,580 >> Nhưng hãy để tôi chỉ đề nghị, nếu bạn đã có một cuộc thảo luận hiện nay 801 00:39:11,580 --> 00:39:13,491 với các kỹ sư đề xuất các thuật toán này 802 00:39:13,491 --> 00:39:15,490 và bạn đang cố gắng để làm cho một quyết định tính, 803 00:39:15,490 --> 00:39:17,285 bởi vì có lẽ các kỹ sư nói với bạn, bạn 804 00:39:17,285 --> 00:39:19,910 biết những gì, tôi có thể thực hiện một tìm kiếm tuyến tính trong giống như hai phút. 805 00:39:19,910 --> 00:39:21,150 Thật dễ dàng. 806 00:39:21,150 --> 00:39:24,790 tìm kiếm nhị phân là không ưa thích mà, nhưng nó sẽ đưa tôi giống như 10 phút, 807 00:39:24,790 --> 00:39:26,650 như vậy 5 lần như lâu dài. 808 00:39:26,650 --> 00:39:30,900 >> Có một thương mại ở đây, ngay cả trong điều kiện các quyết định phần mềm nào để viết. 809 00:39:30,900 --> 00:39:34,760 Do bạn viết các thuật toán đơn giản, mà sẽ chỉ mất khoảng hai phút? 810 00:39:34,760 --> 00:39:39,880 Hay bạn dành nhiều thời gian, 10 phút, viết các thuật toán fancier? 811 00:39:39,880 --> 00:39:43,540 Làm thế nào để bạn quyết định rằng loại câu hỏi? 812 00:39:43,540 --> 00:39:46,710 Hoặc bạn có thể làm cho nó thêm một chút thực. 813 00:39:46,710 --> 00:39:50,610 Tôi nói với ông chủ của tôi nó sẽ mất tôi hoặc là một tuần hoặc 10 tuần 814 00:39:50,610 --> 00:39:52,490 để thực hiện phần mềm theo cách này, làm thế nào 815 00:39:52,490 --> 00:39:56,103 để bạn quyết định thuật toán để màu xanh lá cây ánh sáng? 816 00:39:56,103 --> 00:39:56,603 Karim? 817 00:39:56,603 --> 00:39:57,550 >> Đung Các khán giả, tôi đoán. 818 00:39:57,550 --> 00:39:57,960 >> DAVID Malan: Các khán giả. 819 00:39:57,960 --> 00:39:59,460 bạn có ý nghĩa gì bởi các khán giả? 820 00:39:59,460 --> 00:40:03,460 >> Đung Nếu nó sẽ được sử dụng bởi người dùng 821 00:40:03,460 --> 00:40:09,050 người [IM LẶNG] bởi người dùng [IM LẶNG]. 822 00:40:09,050 --> 00:40:11,232 Nhưng nếu đó là một cái gì đó bạn chỉ làm cho chính mình 823 00:40:11,232 --> 00:40:13,946 để tạo điều kiện cho một vấn đề, [IM LẶNG] nhanh hơn. 824 00:40:13,946 --> 00:40:16,820 DAVID Malan: Vâng, nó nhanh chóng và bẩn là một cách tốt để mô tả nó. 825 00:40:16,820 --> 00:40:18,695 Trong thực tế, nếu bạn mô tả nhiều thời gian của tôi 826 00:40:18,695 --> 00:40:23,630 học ở đại học, theo đó thường lần, Tôi đã viết mã xấu có ý thức vậy-- 827 00:40:23,630 --> 00:40:26,490 ít nhất, đó là cách tôi hợp lý hóa it-- ý thức như vậy, 828 00:40:26,490 --> 00:40:30,670 vì mặc dù tôi đã viết mã đó là tương đối chậm để thực hiện, 829 00:40:30,670 --> 00:40:33,750 Tôi đã có thể viết mã riêng của mình khá nhanh, chi tiêu chỉ trong vài phút 830 00:40:33,750 --> 00:40:35,107 hoặc giờ không phải ngày. 831 00:40:35,107 --> 00:40:37,190 Và nó bật ra, tôi đôi khi cần thiết để ngủ. 832 00:40:37,190 --> 00:40:41,270 Vì vậy, ngay cả khi mã của tôi yêu cầu 8 giờ để chạy, cũng đó là tốt, 833 00:40:41,270 --> 00:40:42,850 Tôi sẽ chỉ đi vào giấc ngủ trong khi nó chạy. 834 00:40:42,850 --> 00:40:46,350 >> Vì vậy, tại thời điểm đó, tôi nghĩ đây là rất thông minh, mặc dù tôi rõ ràng 835 00:40:46,350 --> 00:40:48,990 làm việc thông qua tiến sĩ của tôi rất chậm. 836 00:40:48,990 --> 00:40:52,270 Nhưng chuyện đó là rằng, nếu tôi đã viết phần mềm 837 00:40:52,270 --> 00:40:55,930 cho người khác quan trọng ấy nhiều hơn tôi, cũng, 838 00:40:55,930 --> 00:40:59,580 có cho họ chờ đợi 8 giờ đến nhận lại kết quả tìm kiếm của họ 839 00:40:59,580 --> 00:41:01,350 không phải là tất cả những gì hấp dẫn. 840 00:41:01,350 --> 00:41:04,090 Và do đó, dành nhiều thời gian lên phía trước để viết phần mềm 841 00:41:04,090 --> 00:41:07,300 đó là hiệu quả hơn, như thuật toán thứ ba của chúng tôi, 842 00:41:07,300 --> 00:41:09,780 có thể đem lại lợi ích cho người sử dụng theo thời gian. 843 00:41:09,780 --> 00:41:12,710 Vì vậy, nó thực sự phụ thuộc qua thời gian như thế nào những chi phí thêm lên. 844 00:41:12,710 --> 00:41:14,960 Nếu bạn đang đi để được viết phần mềm để sử dụng nó một lần, 845 00:41:14,960 --> 00:41:17,240 có lẽ cũng có thể làm nhanh chóng và dơ bẩn, như họ nói. 846 00:41:17,240 --> 00:41:18,198 Chỉ cần ném nó lại với nhau. 847 00:41:18,198 --> 00:41:20,560 Đó là mã bối rối bạn, nó rất xấu, 848 00:41:20,560 --> 00:41:23,860 nhưng nó được công việc làm đúng, mặc dù nó không hiệu quả. 849 00:41:23,860 --> 00:41:27,200 Ngược lại, bạn dành nhiều thời gian trên một cái gì đó, làm cho nó vừa phải. 850 00:41:27,200 --> 00:41:30,730 Và sau đó phân bổ dần theo thời gian, chi phí mà trả trước thời gian 851 00:41:30,730 --> 00:41:34,330 có lẽ là đáng giá, nếu bạn giữ tối ưu hóa cho các trường hợp thông thường. 852 00:41:34,330 --> 00:41:37,620 >> Và quả thực, đó là một chủ đề trong lập trình, hoặc máy tính khoa học hơn 853 00:41:37,620 --> 00:41:41,390 nói chung, cố gắng tối ưu không cho các trường hợp hiếm gặp 854 00:41:41,390 --> 00:41:44,390 nhưng case-- chung những gì hoạt động sẽ xảy ra một lần nữa và một lần nữa? 855 00:41:44,390 --> 00:41:47,730 Nếu bạn đang đi để có tỷ người sử dụng tìm kiếm trên trang web của bạn, 856 00:41:47,730 --> 00:41:52,030 có lẽ bạn nên dành thêm tuần lên phía trước bằng văn bản phần mềm tốt hơn, 857 00:41:52,030 --> 00:41:53,670 để tất cả người dùng của bạn được hưởng lợi. 858 00:41:53,670 --> 00:41:57,840 Bây giờ, chúng ta hãy cố gắng nắm bắt một này ít những bức tranh, nhưng không quá nhiều 859 00:41:57,840 --> 00:41:58,610 số lượng. 860 00:41:58,610 --> 00:42:01,680 >> Vì vậy, đây chỉ là một biểu đồ trường học cũ. 861 00:42:01,680 --> 00:42:04,260 Và hãy để tôi nói rằng đây là thời gian. 862 00:42:04,260 --> 00:42:06,660 Và nó không quan trọng what-- thực sự, không, không phải thời gian. 863 00:42:06,660 --> 00:42:08,320 Hãy đặt mà trên trục khác. 864 00:42:08,320 --> 00:42:15,700 Hãy nói rằng đây là thời gian, và đây là kích thước của vấn đề. 865 00:42:15,700 --> 00:42:17,830 >> Và một nhà khoa học máy tính nói chung có thể gọi 866 00:42:17,830 --> 00:42:20,820 chỉ n này. n là như đi-đến biến của chúng tôi, nơi 867 00:42:20,820 --> 00:42:26,351 n là một số, số n, và đó là số lượng của bất cứ yếu tố đầu vào mà bạn có. 868 00:42:26,351 --> 00:42:28,100 Vì vậy, trong trường hợp này, n là số trang. 869 00:42:28,100 --> 00:42:30,150 Vì vậy, nó có thể là 1.000 các trường hợp, chúng tôi chỉ nói. 870 00:42:30,150 --> 00:42:31,969 >> Vì vậy, thời gian có thể được bất kỳ đơn vị đo lường. 871 00:42:31,969 --> 00:42:32,760 Có lẽ, đó là thứ hai. 872 00:42:32,760 --> 00:42:33,410 Có lẽ, đó là ngày. 873 00:42:33,410 --> 00:42:34,590 Có lẽ, nó giống như lượt trang. 874 00:42:34,590 --> 00:42:35,215 Không quan trọng. 875 00:42:35,215 --> 00:42:38,840 Dù bạn muốn đếm trong, mà sẽ có thời gian hoặc chi phí tương đương. 876 00:42:38,840 --> 00:42:42,400 >> Vì vậy, với điều đó đầu tiên thuật toán, nếu tôi, ví dụ, 877 00:42:42,400 --> 00:42:45,920 đã có một cuốn sách điện thoại 1.000 trang, Tôi sẽ vẽ một dấu chấm ở đó, 878 00:42:45,920 --> 00:42:51,450 bởi vì nếu nó là 1.000 trang, nó mất khoảng 1.000 trang biến, cho hoặc mất. 879 00:42:51,450 --> 00:42:54,100 Và sau đó nếu tôi có một Danh bạ điện thoại 2000 trang, 880 00:42:54,100 --> 00:42:57,200 và tôi sẽ vẽ một giây rải rác ở đây, bởi vì đối với 2.000 trang, 881 00:42:57,200 --> 00:42:59,810 nó giống như 2.000 giây hoặc trang biến hoặc bất cứ điều gì. 882 00:42:59,810 --> 00:43:02,480 Và vì vậy khi tôi đã nói trước đó, nó loại một mối quan hệ tuyến tính, 883 00:43:02,480 --> 00:43:06,020 đó là cố ý, vì tôi muốn sau on-- đúng now-- để vẽ một đường thẳng. 884 00:43:06,020 --> 00:43:07,770 Đó là loại thẳng mối quan hệ dòng. 885 00:43:07,770 --> 00:43:10,180 Độ dốc là 1/1, nếu bạn muốn. 886 00:43:10,180 --> 00:43:14,630 >> Trong khi đó, các thuật toán thứ hai cho biết, nếu bạn đã có 1.000 trang 887 00:43:14,630 --> 00:43:17,680 và bạn đang sử dụng các thuật toán thứ hai, nơi tôi tính bằng 2, biến 888 00:43:17,680 --> 00:43:22,564 hai trang cùng một thời gian, tôi sẽ vẽ một dấu chấm phía dưới hoặc trên chấm ban đầu của tôi? 889 00:43:22,564 --> 00:43:23,450 >> Đung Dưới đây. 890 00:43:23,450 --> 00:43:27,992 >> DAVID Malan: Dưới đây, vì như chúng ta đã thấy, phải mất ít thời gian hơn, bằng một nửa thời gian. 891 00:43:27,992 --> 00:43:29,950 Vì vậy, các dấu chấm nên được một nửa cao như người kia. 892 00:43:29,950 --> 00:43:33,330 Và cùng một thỏa thuận trên đây, dấu chấm này có lẽ nên được khoảng đó. 893 00:43:33,330 --> 00:43:39,666 Và do đó, thuật toán thứ hai của tôi, tương tự, có một mối quan hệ tuyến tính với thời gian. 894 00:43:39,666 --> 00:43:41,990 Và chúng ta có thể rút ra nó là như vậy. 895 00:43:41,990 --> 00:43:45,950 >> Vì vậy, bây giờ, thứ ba và cuối cùng Thuật toán là một chút khó khăn hơn để vẽ. 896 00:43:45,950 --> 00:43:49,530 Nhưng bằng trực giác, nếu tôi đã có 1.000 trang với thuật toán thứ ba của tôi, 897 00:43:49,530 --> 00:43:52,340 nó chỉ nên đưa tôi như 10 bước. 898 00:43:52,340 --> 00:43:57,500 Và nếu tôi đã có 2.000 trang với thuật toán thứ ba của tôi, 899 00:43:57,500 --> 00:44:01,570 nó sẽ đưa tôi chứ không phải 10 bước, nhưng 11, chỉ một nhiều hơn. 900 00:44:01,570 --> 00:44:03,610 Vì vậy, chúng tôi chỉ vừa đủ sẽ thấy điều này. 901 00:44:03,610 --> 00:44:06,010 >> Và hóa ra, nếu Tôi phóng về điều này, tôi 902 00:44:06,010 --> 00:44:09,320 sẽ phóng đại cho hiệu quả, hình dạng của dòng đó, cuối cùng, 903 00:44:09,320 --> 00:44:11,990 không phải là một line-- thẳng bởi vì, thực sự nếu nó được, 904 00:44:11,990 --> 00:44:15,390 nó sẽ trông giống như others-- nó thực sự là một đường cong 905 00:44:15,390 --> 00:44:19,265 rằng, nếu chúng ta phóng to, sẽ nhìn nhiều hơn như thế này. 906 00:44:19,265 --> 00:44:21,670 It-- tốt, OK, bỏ qua phần này. 907 00:44:21,670 --> 00:44:25,330 Đó là cây bút của tôi đi về góc. 908 00:44:25,330 --> 00:44:29,000 Đó là một đường cong mà luôn luôn là ngày càng tăng, luôn luôn, luôn luôn, luôn luôn 909 00:44:29,000 --> 00:44:32,100 ngày càng tăng, nhưng chỉ vừa đủ. 910 00:44:32,100 --> 00:44:36,260 >> Và như vậy theo thời gian, bạn có một mối quan hệ đó là như thế này. 911 00:44:36,260 --> 00:44:37,540 Nó gần như thẳng. 912 00:44:37,540 --> 00:44:40,330 Nhưng nó bao giờ nên từ từ tăng lên. 913 00:44:40,330 --> 00:44:44,780 Nhưng đối với hầu hết tất cả các điểm dọc x-trục của bạn, trục ngang, 914 00:44:44,780 --> 00:44:46,550 nó thấp hơn so với những dòng khác. 915 00:44:46,550 --> 00:44:49,930 >> Vì vậy, đây có thể là một mối quan hệ n, theo đó nếu bạn có các trang n, 916 00:44:49,930 --> 00:44:51,100 đưa bạn n giây. 917 00:44:51,100 --> 00:44:53,320 Đây có thể là một mối quan hệ n / 2. 918 00:44:53,320 --> 00:44:56,710 Bạn có trang n, phải mất bạn n / 2 giây, một nửa là nhiều. 919 00:44:56,710 --> 00:45:00,590 Và đây là một logarit mối quan hệ, trong đó 920 00:45:00,590 --> 00:45:08,920 nếu bạn gọi lại, đăng nhập cơ sở 2 của n chụp sự phát triển này, vậy để nói chuyện. 921 00:45:08,920 --> 00:45:12,000 Vì vậy, đây là loại thánh Chén giữa ba trong số này 922 00:45:12,000 --> 00:45:15,940 ở đây, bởi vì nó chỉ là nhiều hơn nữa hiệu quả, nhưng phức tạp cho là hơn 923 00:45:15,940 --> 00:45:18,610 thực hiện. 924 00:45:18,610 --> 00:45:20,510 Bất kỳ câu hỏi? 925 00:45:20,510 --> 00:45:26,220 >> Vâng cho tôi làm điều này, chúng ta hãy tôi mở ra một cửa sổ văn bản 926 00:45:26,220 --> 00:45:29,100 chỉ cần như vậy chúng ta có thể cố gắng chính thức hóa một cái gì đó ở đây. 927 00:45:29,100 --> 00:45:32,410 Vì vậy, hãy để tôi đi trước bây giờ và thực hiện thuật toán này 928 00:45:32,410 --> 00:45:35,170 cho việc tìm kiếm Mike Smith trong mã, nếu bạn sẽ, mã giả. 929 00:45:35,170 --> 00:45:36,620 Tôi sẽ không sử dụng Java hay C ++. 930 00:45:36,620 --> 00:45:38,610 Tôi chỉ sẽ sử dụng loại Anh giống như cú pháp, mà chúng tôi 931 00:45:38,610 --> 00:45:40,151 nói chung sẽ gọi mã giả. 932 00:45:40,151 --> 00:45:41,660 Ở đây, tôi có một cửa sổ trống. 933 00:45:41,660 --> 00:45:48,180 Và tôi nói bước 1 của rất Thuật toán đầu tiên là nhận cuốn sách điện thoại. 934 00:45:48,180 --> 00:45:51,740 Bước 2 là cuốn sách mở trang đầu tiên. 935 00:45:51,740 --> 00:45:58,080 Bước 3 sẽ được xem xét trang cho Mike Smith. 936 00:45:58,080 --> 00:46:02,740 Nếu trên trang, gọi Mike. 937 00:46:02,740 --> 00:46:11,640 khác chuyển trang và đi đến bước 3. 938 00:46:11,640 --> 00:46:13,590 Xong, chúng ta hãy nói. 939 00:46:13,590 --> 00:46:18,110 >> Và do đó, nó không phải là khá hoàn hảo, mà chúng ta sẽ thấy trong một thời điểm. 940 00:46:18,110 --> 00:46:21,050 Nhưng chúng ta hãy xem xét những gì khái niệm tôi đã giới thiệu ở đây. 941 00:46:21,050 --> 00:46:24,450 Vì vậy, các bước 1 và 2 và 3 là khá nhiều động từ. 942 00:46:24,450 --> 00:46:26,544 Họ báo cáo, actions-- làm điều này. 943 00:46:26,544 --> 00:46:28,710 Và như vậy trong một chương trình ngôn ngữ, chúng tôi sẽ thường 944 00:46:28,710 --> 00:46:32,349 gọi cho họ báo cáo hay chức năng hoặc thủ tục, 945 00:46:32,349 --> 00:46:33,640 gọi cho họ bất kỳ số lượng của sự vật. 946 00:46:33,640 --> 00:46:35,460 Nhưng họ chỉ actions-- làm điều này. 947 00:46:35,460 --> 00:46:40,370 >> Bước 4 về cơ bản là khác nhau, bởi vì nó loại hỏi một câu hỏi. 948 00:46:40,370 --> 00:46:42,400 Nó nói rằng chúng tôi đang loại của tại một ngã ba đường. 949 00:46:42,400 --> 00:46:48,000 Nếu Mike là trên trang web, gọi ông, vì thế rẽ trái, nếu bạn muốn. 950 00:46:48,000 --> 00:46:52,170 Và nếu không, trở lại một số khác page-- hay đúng hơn, xin lỗi, 951 00:46:52,170 --> 00:46:56,650 trở lại một số bước khác, mà gây ra một số loại vòng lặp cấu trúc. 952 00:46:56,650 --> 00:46:59,530 Và chúng tôi làm điều đó một lần nữa và một lần nữa và một lần nữa. 953 00:46:59,530 --> 00:47:01,300 >> Và trên thực tế, bạn biết những gì? 954 00:47:01,300 --> 00:47:01,800 Yeah. 955 00:47:01,800 --> 00:47:04,704 956 00:47:04,704 --> 00:47:09,010 khác nếu ở cuối cửa sổ. 957 00:47:09,010 --> 00:47:11,624 Vì vậy, chúng ta cần loại của một phần ba điều kiện, bởi vì bạn 958 00:47:11,624 --> 00:47:14,290 không thể giữ chuyển các quảng cáo trang nauseum, bởi vì cuối cùng, tôi sẽ 959 00:47:14,290 --> 00:47:15,320 nhấn cuối của cuốn sách. 960 00:47:15,320 --> 00:47:18,546 Và một lỗi trong một chương trình có thể được không dự đoán kịch bản đó. 961 00:47:18,546 --> 00:47:21,420 Và sau đó tôi mới nhận ra, oh, chờ đợi một phút, tôi cần một kịch bản thứ ba. 962 00:47:21,420 --> 00:47:23,900 Nếu tôi ra khỏi trang, tôi nên thực sự chỉ là dừng lại. 963 00:47:23,900 --> 00:47:25,330 Nếu không, nó không xác định. 964 00:47:25,330 --> 00:47:29,260 Chuyện gì sẽ xảy ra nếu tôi giữ nói lật trang và quay trở lại, 965 00:47:29,260 --> 00:47:31,810 điều này là khi máy tính đóng băng hoặc sụp đổ, khi bạn nhấn 966 00:47:31,810 --> 00:47:34,160 một số tình huống bất ngờ như thế. 967 00:47:34,160 --> 00:47:37,280 >> Bây giờ, những gì về Mike algorithm-- thứ ba Smith 968 00:47:37,280 --> 00:47:43,150 nhặt cuốn sách điện thoại, Cuốn sách mở cửa cho first-- để 969 00:47:43,150 --> 00:47:48,640 không, không phải lần đầu tiên trang thời gian này, để middle-- oh, tốt, mà muốn 970 00:47:48,640 --> 00:47:49,640 là thuật toán thứ hai. 971 00:47:49,640 --> 00:47:50,590 Hãy chỉ cần bỏ vào thứ ba. 972 00:47:50,590 --> 00:47:50,930 >> Đung Oh, tôi xin lỗi. 973 00:47:50,930 --> 00:47:51,971 >> DAVID Malan: Đó là tiền phạt. 974 00:47:51,971 --> 00:47:58,590 Hãy chỉ cần bỏ qua để mở third-- đến giữa và bây giờ nhìn cho Mike Smith. 975 00:47:58,590 --> 00:48:02,300 nếu trên trang, gọi Mike. 976 00:48:02,300 --> 00:48:04,910 Và sau đó những gì chúng tôi muốn nói ở đây? 977 00:48:04,910 --> 00:48:06,134 khác những gì? 978 00:48:06,134 --> 00:48:10,620 979 00:48:10,620 --> 00:48:12,370 Chúng tôi có thể thể hiện điều này trong nhiều cách. 980 00:48:12,370 --> 00:48:13,369 Không có câu trả lời đúng. 981 00:48:13,369 --> 00:48:20,819 982 00:48:20,819 --> 00:48:23,735 OK, nếu không một lần nữa, nhưng chúng ta cần phải be-- OK, chúng tôi muốn chia làm hai, 983 00:48:23,735 --> 00:48:25,630 nhưng chúng ta muốn đi bên trái hoặc đi phải không? 984 00:48:25,630 --> 00:48:29,560 Làm thế nào để chúng ta bày tỏ quan điểm cho rằng? 985 00:48:29,560 --> 00:48:31,790 Vâng, trong trường hợp của Mike, vâng, đó là công bằng. 986 00:48:31,790 --> 00:48:35,050 Nhưng OK, do đó thực sự là một điểm tốt. 987 00:48:35,050 --> 00:48:35,550 Đó là tốt. 988 00:48:35,550 --> 00:48:36,924 Chúng tôi sẽ tiếp tục đi với logic này. 989 00:48:36,924 --> 00:48:38,182 Vì thế-- 990 00:48:38,182 --> 00:48:39,810 >> Đung Ít hơn một nửa. 991 00:48:39,810 --> 00:48:40,560 DAVID Malan: Yeah. 992 00:48:40,560 --> 00:48:49,820 Vì vậy, nếu người nào khác trang là, chúng ta sẽ nói, ít hơn Smith, bên trái của Smith, 993 00:48:49,820 --> 00:48:52,220 then-- chúng ta hãy xem, là này sẽ làm phức tạp? 994 00:48:52,220 --> 00:49:01,885 khác nếu trang đi trước Smith, giọt nước mắt vào nửa, vứt đi đó một nửa? 995 00:49:01,885 --> 00:49:05,643 996 00:49:05,643 --> 00:49:09,140 >> KHÁN GIẢ: Tôi nghĩ đó là [IM LẶNG]. 997 00:49:09,140 --> 00:49:11,650 >> DAVID Malan: Tôi nghe cả câu trả lời. 998 00:49:11,650 --> 00:49:12,431 >> Đung trái. 999 00:49:12,431 --> 00:49:14,430 DAVID Malan: OK, ném đi trái rưỡi, như Lakisa 1000 00:49:14,430 --> 00:49:19,700 nói trước đó, rời một nửa, sau đó tôi loại 1001 00:49:19,700 --> 00:49:23,940 muốn chỉ cần đi với: tôi đi về bên phải. 1002 00:49:23,940 --> 00:49:27,380 Hoặc tương đương, và tôi thực hiện một ít chút của một mớ hỗn độn của đầu ở đây, 1003 00:49:27,380 --> 00:49:30,760 Tôi muốn có hiệu quả đi đến bước 2 một lần nữa, 1004 00:49:30,760 --> 00:49:38,270 nơi mở cửa cho middle-- hoặc open-- yeah, hãy chỉ nói rằng, các trang để giữa. 1005 00:49:38,270 --> 00:49:39,020 Và điều này sửa chữa nó. 1006 00:49:39,020 --> 00:49:39,936 Nó không còn là một cuốn sách. 1007 00:49:39,936 --> 00:49:42,210 Nó chỉ là một nửa của một cuốn sách, trang để mở trung. 1008 00:49:42,210 --> 00:49:44,010 >> là else-- gần đó. 1009 00:49:44,010 --> 00:49:54,000 Bước 6, khác nếu trang xuất sau khi Smith, xé làm đôi, ném rưỡi đi ngay, 1010 00:49:54,000 --> 00:49:55,680 sau đó đi đến bước 2. 1011 00:49:55,680 --> 00:49:58,920 1012 00:49:58,920 --> 00:50:05,230 khác bỏ thuốc lá, một kịch bản thứ tư nếu chúng tôi không có các trang bên trái để bật. 1013 00:50:05,230 --> 00:50:06,394 Vì vậy, chúng ta có thể làm sạch này lên. 1014 00:50:06,394 --> 00:50:07,560 Và chúng ta nên làm sạch này lên. 1015 00:50:07,560 --> 00:50:10,656 Đây là mã rất giả, nếu bạn sẽ, mô tả mức độ rất cao. 1016 00:50:10,656 --> 00:50:12,280 Nhưng nó thường nắm bắt được ý tưởng. 1017 00:50:12,280 --> 00:50:16,040 >> Và, một lần nữa, trong trường hợp này, chúng tôi có khái niệm về một điều kiện, 1018 00:50:16,040 --> 00:50:20,450 một chi nhánh, một ngã ba đường, làm một decision-- nếu điều này, đi theo con đường này, 1019 00:50:20,450 --> 00:50:23,082 else if, đi theo con đường này, else if, đi theo cách đó. 1020 00:50:23,082 --> 00:50:25,040 Và điều này là rất phổ biến kỹ thuật lập trình 1021 00:50:25,040 --> 00:50:27,721 để quyết định hướng để đi, vậy để nói chuyện. 1022 00:50:27,721 --> 00:50:29,970 Và chúng tôi cũng có một số loại của vòng lặp cấu trúc, nơi 1023 00:50:29,970 --> 00:50:32,440 chúng tôi đang làm một cái gì đó một lần nữa và một lần nữa. 1024 00:50:32,440 --> 00:50:34,820 >> Bây giờ, nó quay ra, nhiều như trong ví dụ này, 1025 00:50:34,820 --> 00:50:37,660 là siêu chính xác là rất quan trọng. 1026 00:50:37,660 --> 00:50:42,180 Nhưng chúng tôi cũng đã nhìn thấy một cái gì đó mà chúng tôi tiếp tục gọi trừu tượng. 1027 00:50:42,180 --> 00:50:45,490 Có nghĩa là gì để nhận cuốn sách điện thoại? 1028 00:50:45,490 --> 00:50:47,740 Chúng tôi chỉ loại dùng cho các cấp trong phòng này 1029 00:50:47,740 --> 00:50:49,340 rằng có một số ý nghĩa ngữ nghĩa. 1030 00:50:49,340 --> 00:50:51,740 Tất cả chúng ta chỉ cần loại biết, oh, tốt, nhặt những cuốn sách điện thoại. 1031 00:50:51,740 --> 00:50:52,864 Điều đó thực sự có ý nghĩa gì? 1032 00:50:52,864 --> 00:50:59,060 Vâng, đó thực sự có nghĩa là mở rộng tay, nạc hơn, mở rộng các ngón tay, 1033 00:50:59,060 --> 00:51:03,890 véo sách giữa các ngón tay, đứng lên, kéo tay về phía bạn. 1034 00:51:03,890 --> 00:51:05,940 Và chúng ta có thể được thực sự mô phạm về điều này, 1035 00:51:05,940 --> 00:51:08,640 thực sự là siêu chính xác như những gì tôi đang làm. 1036 00:51:08,640 --> 00:51:13,300 Nhưng tất cả những bước chung những gì nó có nghĩa là để chọn một cuốn sách điện thoại. 1037 00:51:13,300 --> 00:51:16,940 >> Và như vậy trước đó, khi tôi nói, mỗi của hai câu đầu tiên này 1038 00:51:16,940 --> 00:51:20,830 có thể được coi như một tiến hành hoặc một chức năng, 1039 00:51:20,830 --> 00:51:24,090 thực sự nó đại diện cho những gì chúng tôi tục gọi là trừu tượng. 1040 00:51:24,090 --> 00:51:28,770 Nó giống như một mức độ cao về khái niệm mô tả về một vấn đề mà 1041 00:51:28,770 --> 00:51:31,110 thực sự liên quan khá một vài bước. 1042 00:51:31,110 --> 00:51:34,190 Và do đó, đây cũng là một chủ đề định kỳ trong lập trình, 1043 00:51:34,190 --> 00:51:41,125 nhờ đó mà tôi có thể viết một chương trình sử dụng cú pháp như này-- 1044 00:51:41,125 --> 00:51:42,000 pick_up_phone_book (). 1045 00:51:42,000 --> 00:51:44,344 1046 00:51:44,344 --> 00:51:46,510 Và sau đó cú pháp, tôi sẽ ăn cắp một cái gì đó 1047 00:51:46,510 --> 00:51:48,090 từ hầu hết các ngôn ngữ lập trình. 1048 00:51:48,090 --> 00:51:51,270 >> Bây giờ, bước 1 trông thậm chí giống như một chức năng, 1049 00:51:51,270 --> 00:51:53,160 như một lập trình viên sẽ gọi nó. 1050 00:51:53,160 --> 00:51:58,650 Nó trông giống như một người nào đó mã đã đưa ra một tên và được 1051 00:51:58,650 --> 00:52:03,300 tôi để sử dụng somehow-- trong khác lời nói, những gì các dòng tôi đã nêu bật 1052 00:52:03,300 --> 00:52:07,050 đại diện cho chức năng mà có lẽ Tôi thậm chí không thực hiện bản thân mình. 1053 00:52:07,050 --> 00:52:10,410 Có người lớn tuổi hơn, khôn ngoan hơn tôi đã tìm ra 1054 00:52:10,410 --> 00:52:12,700 cách bạn thể hiện các khái niệm chọn lên một cuốn sách điện thoại. 1055 00:52:12,700 --> 00:52:15,860 Và nó giống như các năm bước tôi chỉ huống, ra khỏi đỉnh đầu của tôi. 1056 00:52:15,860 --> 00:52:19,350 >> Nhưng anh ấy hoặc cô ấy đã thực hiện này, đã đưa ra những số bước 1057 00:52:19,350 --> 00:52:22,339 một tên, pick_up_phone_book. 1058 00:52:22,339 --> 00:52:24,380 Và các dấu ngoặc đơn là chỉ là những gì hầu hết các lập trình viên 1059 00:52:24,380 --> 00:52:27,100 làm vào cuối của báo cáo như thế này. 1060 00:52:27,100 --> 00:52:30,190 bây giờ tôi có thể đứng trên mình vai và không bao giờ một lần nữa, 1061 00:52:30,190 --> 00:52:32,465 suy nghĩ về những gì nó có nghĩa là để chọn một cuốn sách điện thoại. 1062 00:52:32,465 --> 00:52:34,090 Tôi chỉ có thể nói, nhấc cuốn sách điện thoại. 1063 00:52:34,090 --> 00:52:36,690 Và đó chính xác là những gì tất cả con người chúng ta đã làm ở đây. 1064 00:52:36,690 --> 00:52:38,940 >> Khi chúng tôi có lẽ là 1 tuổi, 2 tuổi, 1065 00:52:38,940 --> 00:52:41,690 ai đó đã dạy cho chúng tôi những gì nó có nghĩa là để chọn một cuốn sách điện thoại. 1066 00:52:41,690 --> 00:52:43,810 Và kể từ đó, chúng tôi đã tóm tắt đi 1067 00:52:43,810 --> 00:52:46,739 từ những người rất nhàm chán bước cơ khí. 1068 00:52:46,739 --> 00:52:48,530 Và chúng ta chỉ có một sự hiểu biết trực quan 1069 00:52:48,530 --> 00:52:50,480 về những gì nó có nghĩa là chọn một cuốn sách điện thoại. 1070 00:52:50,480 --> 00:52:55,730 >> Và bạn có thể suy luận hiện nay để things-- phức tạp hơn 1071 00:52:55,730 --> 00:52:57,640 xây dựng một tòa nhà. 1072 00:52:57,640 --> 00:52:59,940 Giống như, với một số người, mà thực sự có ý nghĩa. 1073 00:52:59,940 --> 00:53:03,080 Cho các nhà thầu, kiến ​​trúc sư, mà có một số ý nghĩa. 1074 00:53:03,080 --> 00:53:06,400 Và họ sẽ biết phải làm gì, nếu Tôi nói, đi xây dựng một tòa nhà. 1075 00:53:06,400 --> 00:53:10,520 >> Nhưng hầu hết chúng ta trong phòng có thể không đối phó với mức độ trừu tượng. 1076 00:53:10,520 --> 00:53:14,850 Bạn cần phải cho chúng ta muốn đi lấy xẻng và đi lấy bê tông 1077 00:53:14,850 --> 00:53:17,250 và móng tay các mảnh gỗ với nhau và bất cứ điều gì khác 1078 00:53:17,250 --> 00:53:18,830 là tham gia vào việc xây dựng một tòa nhà. 1079 00:53:18,830 --> 00:53:21,690 Và đó là bởi vì chúng tôi đã không chưa được lập trình để hiểu 1080 00:53:21,690 --> 00:53:23,629 ý nghĩa của việc xây dựng một tòa nhà. 1081 00:53:23,629 --> 00:53:24,920 Chúng tôi không có trừu tượng. 1082 00:53:24,920 --> 00:53:26,570 Chúng tôi không có chức năng đó. 1083 00:53:26,570 --> 00:53:29,930 >> Và vì vậy những gì bạn sẽ thấy trong ngôn ngữ lập trình, nói chung, 1084 00:53:29,930 --> 00:53:34,570 ngôn ngữ đặc biệt là hiện đại hơn, như Java, PHP, Ruby, Python, 1085 00:53:34,570 --> 00:53:37,610 họ có nhiều trưởng thành hơn ngôn ngữ cũ, 1086 00:53:37,610 --> 00:53:40,140 như C và C ++ nhưng những người khác. 1087 00:53:40,140 --> 00:53:42,580 Và như vậy họ đến với nhiều hơn chức năng được xây dựng trong. 1088 00:53:42,580 --> 00:53:45,640 Nhiều mã đã được viết bởi những người trong quá khứ 1089 00:53:45,640 --> 00:53:50,520 mà bây giờ chúng ta có thể gọi điện thoại hoặc triệu tập hoặc sử dụng, như tôi đang gián tiếp 1090 00:53:50,520 --> 00:53:52,231 tại với điều này nhấn mạnh dòng ở đây. 1091 00:53:52,231 --> 00:53:55,230 Và như vậy, mặc dù chúng tôi không nói về ngôn ngữ lập trình cho mỗi gia nhập, 1092 00:53:55,230 --> 00:54:00,230 mã chỉ giả, tất cả các ý tưởng vẫn còn đang thảo luận đó. 1093 00:54:00,230 --> 00:54:04,600 Và hóa ra chính xác là siêu quan trọng, như là trừu tượng. 1094 00:54:04,600 --> 00:54:06,570 Và chúng ta hãy cố gắng giao tiếp đó như sau. 1095 00:54:06,570 --> 00:54:11,000 >> Tôi vô tình có thể tha hồ điều này bằng cách nhấp nháy một slide trên màn hình 1096 00:54:11,000 --> 00:54:12,260 sớm. 1097 00:54:12,260 --> 00:54:16,550 Nhưng hãy để tôi hỏi cho một tình nguyện viên dũng cảm, nếu bạn không nhớ sắp tới. 1098 00:54:16,550 --> 00:54:19,040 Bạn muốn được ở phía trước của máy ảnh, nếu bạn là OK với điều đó. 1099 00:54:19,040 --> 00:54:24,950 ai muốn đi lên và cung cấp cho hướng dẫn để các đồng nghiệp của bạn ở đây? 1100 00:54:24,950 --> 00:54:29,540 Chỉ cần có để đi qua đây và đứng trên đây và nói vài lời. 1101 00:54:29,540 --> 00:54:32,890 >> Victoria mỉm cười nhiều nhất và tránh ánh mắt của tôi nhiều nhất. 1102 00:54:32,890 --> 00:54:34,740 Bạn có sẵn sàng để đến ngày lên? 1103 00:54:34,740 --> 00:54:35,240 ĐƯỢC. 1104 00:54:35,240 --> 00:54:38,480 Và nếu tất cả mọi người khác ở chỗ ngồi của bạn có thể đưa ra một mảnh giấy phế liệu, 1105 00:54:38,480 --> 00:54:39,750 nếu bạn sẽ. 1106 00:54:39,750 --> 00:54:40,760 giấy lót là tốt. 1107 00:54:40,760 --> 00:54:41,990 Hãy đến khoảng cách này. 1108 00:54:41,990 --> 00:54:44,580 Hoặc một số giấy mà bạn đã được đưa ra ngày hôm qua, 1109 00:54:44,580 --> 00:54:46,493 chỉ cần bất kỳ tờ giấy trắng giấy, nếu bạn có thể. 1110 00:54:46,493 --> 00:54:52,240 1111 00:54:52,240 --> 00:54:54,870 Và nếu bạn không có bất kỳ, chỉ cần hỏi hàng xóm của bạn nếu bạn có thể. 1112 00:54:54,870 --> 00:55:04,220 1113 00:55:04,220 --> 00:55:07,580 >> Vì vậy, trong thời điểm này, cho ví dụ này, Victoria 1114 00:55:07,580 --> 00:55:11,520 sẽ đóng vai trò của một lập trình viên, kỹ sư, người 1115 00:55:11,520 --> 00:55:16,130 cần chương trình tất cả các bạn, như các máy tính, để làm một cái gì đó. 1116 00:55:16,130 --> 00:55:19,570 Và chúng ta sẽ thấy những gì giả định bạn quyết định để thực hiện. 1117 00:55:19,570 --> 00:55:22,700 Chúng tôi sẽ xem làm thế nào chính xác cô đã chọn được. 1118 00:55:22,700 --> 00:55:26,220 Và nếu cuộc biểu tình này đi sư phạm tốt, rất nhiều sai lầm 1119 00:55:26,220 --> 00:55:29,220 sẽ được thực hiện, sau đó chúng tôi sẽ sử dụng đó như một cơ hội để thảo luận. 1120 00:55:29,220 --> 00:55:32,010 Nhưng thách thức cho bạn nên là để tránh những sai lầm, 1121 00:55:32,010 --> 00:55:32,896 là một lập trình tốt. 1122 00:55:32,896 --> 00:55:35,520 Và do đó, thách thức ở bàn tay, nếu bạn sẽ thích đi bộ qua đây, 1123 00:55:35,520 --> 00:55:38,799 là ở phía trước của Victoria trên màn hình đây-- và hy vọng, không ai trong số bạn 1124 00:55:38,799 --> 00:55:40,590 hãy nhớ điều này khi tôi chiếu lên màn hình. 1125 00:55:40,590 --> 00:55:44,097 Và không quay lại ở tất cả, bởi vì có màn hình khác trong phòng này 1126 00:55:44,097 --> 00:55:44,930 mà tôi có thể tắt. 1127 00:55:44,930 --> 00:55:46,620 Vì vậy, không quay lại. 1128 00:55:46,620 --> 00:55:49,090 >> Phía trước của Victoria là tiếng thét cùng. 1129 00:55:49,090 --> 00:55:54,170 Và công việc của cô bây giờ là để cho bạn biết tất cả trên mảnh của bạn giấy những gì để vẽ. 1130 00:55:54,170 --> 00:55:57,020 Và chúng ta sẽ thấy, dựa trên hướng dẫn bằng lời nói một mình, 1131 00:55:57,020 --> 00:56:00,020 mã máy tính, nếu bạn muốn, cách vẽ của bạn chính xác 1132 00:56:00,020 --> 00:56:02,330 are-- hiện thực của bạn được. 1133 00:56:02,330 --> 00:56:02,980 Có lý? 1134 00:56:02,980 --> 00:56:03,604 >> Đung Yeah. 1135 00:56:03,604 --> 00:56:04,980 DAVID Malan: OK, thực hiện. 1136 00:56:04,980 --> 00:56:06,030 >> Đung Vẽ một hình vuông. 1137 00:56:06,030 --> 00:56:09,050 >> [CƯỜI] 1138 00:56:09,050 --> 00:56:12,310 >> DAVID Malan: Và không câu hỏi có thể được yêu cầu. 1139 00:56:12,310 --> 00:56:13,720 Chỉ có thể làm những gì bạn đang nói. 1140 00:56:13,720 --> 00:56:17,570 1141 00:56:17,570 --> 00:56:22,550 Oh, và nếu bạn có slide hiện nay mở trong một tab, không nhìn vào tab của bạn. 1142 00:56:22,550 --> 00:56:23,670 ĐƯỢC? 1143 00:56:23,670 --> 00:56:26,135 >> KHÁN GIẢ: OK, vẽ một vòng tròn. 1144 00:56:26,135 --> 00:56:32,544 1145 00:56:32,544 --> 00:56:34,872 Một slope-- tôi có thể nói dốc? 1146 00:56:34,872 --> 00:56:35,830 DAVID Malan: Up cho bạn. 1147 00:56:35,830 --> 00:56:38,230 1148 00:56:38,230 --> 00:56:38,980 Đung A dốc. 1149 00:56:38,980 --> 00:56:46,330 1150 00:56:46,330 --> 00:56:49,795 Và một hình tam giác. 1151 00:56:49,795 --> 00:56:50,850 >> DAVID Malan: Tất cả các quyền. 1152 00:56:50,850 --> 00:56:52,286 Và ở đây để chỉ một khoảnh khắc. 1153 00:56:52,286 --> 00:56:56,046 1154 00:56:56,046 --> 00:56:58,910 Và tôi sẽ đến xung quanh chỉ trong một khoảnh khắc. 1155 00:56:58,910 --> 00:57:02,420 Và không cần phải đặt tên của bạn trên đó. 1156 00:57:02,420 --> 00:57:05,030 Hãy để tôi đi xung quanh và thu thập các bản vẽ của bạn, 1157 00:57:05,030 --> 00:57:08,330 nếu bạn không nhớ xé chúng ra. 1158 00:57:08,330 --> 00:57:12,110 >> Dưới đây là những gì chúng tôi đã trở lại. 1159 00:57:12,110 --> 00:57:14,770 Tôi sẽ chiếu trên màn hình. 1160 00:57:14,770 --> 00:57:18,310 Tôi nhìn thấy một hình vuông, hình tròn, độ dốc, và một hình tam giác. 1161 00:57:18,310 --> 00:57:20,130 Vì vậy, đó là một câu trả lời có. 1162 00:57:20,130 --> 00:57:23,640 Và let's-- Lỗi chính. 1163 00:57:23,640 --> 00:57:25,370 Cho tôi biết. 1164 00:57:25,370 --> 00:57:30,710 Đây là loại khác, và một phía sau nó. 1165 00:57:30,710 --> 00:57:34,130 1166 00:57:34,130 --> 00:57:37,120 >> Vì vậy, tất cả dường như nắm bắt được tinh thần. 1167 00:57:37,120 --> 00:57:38,600 Cho tôi biết. 1168 00:57:38,600 --> 00:57:44,970 Có một, và đây là một số khác. 1169 00:57:44,970 --> 00:57:51,590 Việc giải thích độ dốc là một chút khác nhau, ít cong. 1170 00:57:51,590 --> 00:57:57,140 Và gần nhất, hoặc do các đặc tuyệt vời mà bạn đã 1171 00:57:57,140 --> 00:58:03,520 mô tả, hoặc có thể bạn loại nhìn thấy nó trước, điều này thực sự là 1172 00:58:03,520 --> 00:58:06,340 những gì Victoria thực sự đã được mô tả. 1173 00:58:06,340 --> 00:58:09,190 >> Nhưng bây giờ, những người bạn của những người đã không nhận được nó hoàn toàn đúng, 1174 00:58:09,190 --> 00:58:11,140 hãy cung cấp một số phản đối ở đây. 1175 00:58:11,140 --> 00:58:13,770 Vì vậy, Victoria nói đầu tiên vẽ một hình vuông. 1176 00:58:13,770 --> 00:58:15,830 Và bây giờ, chúng ta có thể giả định vì lợi ích của ngày hôm nay 1177 00:58:15,830 --> 00:58:17,538 mà mọi người đều biết làm thế nào để vẽ một hình vuông. 1178 00:58:17,538 --> 00:58:20,590 Nhưng đó không phải là hoàn toàn rõ ràng, phải không? 1179 00:58:20,590 --> 00:58:23,220 Làm thế nào khác bạn có thể có vẽ một hình vuông, hoặc nơi 1180 00:58:23,220 --> 00:58:27,114 có thể là một số trong những sự mơ hồ ở đây cho máy tính? 1181 00:58:27,114 --> 00:58:28,280 Đung Vị trí và kích thước. 1182 00:58:28,280 --> 00:58:28,980 DAVID Malan: Vị trí, phải không? 1183 00:58:28,980 --> 00:58:32,070 Tất cả các bạn đã có một bài báo của một số hình dạng, nói chung là hình chữ nhật, nhưng hơi 1184 00:58:32,070 --> 00:58:32,830 kích thước khác nhau. 1185 00:58:32,830 --> 00:58:36,250 Nhưng bạn chắc chắn có thể rút ra, nếu bạn muốn, một quảng trường khổng lồ, có thể 1186 00:58:36,250 --> 00:58:37,220 một hình vuông nhỏ. 1187 00:58:37,220 --> 00:58:38,417 Có lẽ, nó đã được quay. 1188 00:58:38,417 --> 00:58:39,500 Tôi không nghĩ rằng chúng ta đã thấy rằng. 1189 00:58:39,500 --> 00:58:41,790 Nhưng nó có thể có được nhiều hơn kim cương như thế nhưng vẫn còn, tuy nhiên, 1190 00:58:41,790 --> 00:58:42,900 Về mặt toán học một hình vuông. 1191 00:58:42,900 --> 00:58:44,850 Vì vậy, mà được cho là mơ hồ. 1192 00:58:44,850 --> 00:58:46,709 >> Sau đó cô nói, vẽ một vòng tròn. 1193 00:58:46,709 --> 00:58:49,250 Một số bạn đã vẽ nó bên cạnh nó, mà không phải là không hợp lý, 1194 00:58:49,250 --> 00:58:52,450 bởi vì con người có xu hướng nghĩ hoặc đọc phải sang trái trong hầu hết các ngôn ngữ, vì vậy không 1195 00:58:52,450 --> 00:58:53,017 đoán xấu. 1196 00:58:53,017 --> 00:58:55,100 Nhưng vòng tròn đó có thể có được bên trong quảng trường, 1197 00:58:55,100 --> 00:58:57,600 có thể đã được xung quanh vuông, có thể có được ở nơi khác 1198 00:58:57,600 --> 00:58:59,480 trên bảng, vì vậy cho là mơ hồ. 1199 00:58:59,480 --> 00:59:03,290 >> Độ dốc có thể là có thể lấy quyền tự do hầu hết bằng lời nói 1200 00:59:03,290 --> 00:59:04,200 với điều đó có nghĩa. 1201 00:59:04,200 --> 00:59:06,980 Và một số bạn hiểu nó như một dòng nguệch ngoạc 1202 00:59:06,980 --> 00:59:08,560 hoặc một đường thẳng hoặc những thứ tương tự. 1203 00:59:08,560 --> 00:59:11,719 Và sau đó tam giác, quá, có thể có được định hướng trong nhiều cách. 1204 00:59:11,719 --> 00:59:14,760 Vì vậy, trong ngắn hạn, thậm chí với một cái gì đó bạn lướt qua và bạn giống như, wow, vì vậy 1205 00:59:14,760 --> 00:59:17,020 đơn giản, một đứa trẻ có thể vẽ này, cũng không 1206 00:59:17,020 --> 00:59:19,640 thực sự, trừ khi bạn đang siêu, siêu thuyết phục 1207 00:59:19,640 --> 00:59:22,045 và nói cho máy tính chính xác những gì để làm. 1208 00:59:22,045 --> 00:59:24,420 Vì vậy, nếu chúng ta có thể, nếu bạn có một tờ giấy khác, chúng ta hãy 1209 00:59:24,420 --> 00:59:26,710 thử này một lần nữa. 1210 00:59:26,710 --> 00:59:29,880 Và tôi sẽ cung cấp cho Victoria một Ví dụ khác trên màn hình ở đây. 1211 00:59:29,880 --> 00:59:34,060 Và một lần nữa, không quay lại và không nhìn vào slide của bạn. 1212 00:59:34,060 --> 00:59:37,304 Và tôi sẽ cho cô ấy một chút thời gian để suy nghĩ về làm thế nào để mô tả này. 1213 00:59:37,304 --> 00:59:39,012 Đừng để họ thấy nỗi sợ hãi trong đôi mắt của bạn. 1214 00:59:39,012 --> 00:59:40,820 >> [CƯỜI] 1215 00:59:40,820 --> 00:59:43,710 >> Và một lần nữa, lần này đòn bẩy một số những takeaways 1216 00:59:43,710 --> 00:59:48,130 và cố gắng để có được hầu như mọi người ít nhất là câu trả lời đúng. 1217 00:59:48,130 --> 00:59:52,260 >> KHÁN GIẢ: OK, hãy mảnh giấy, nhìn 1218 00:59:52,260 --> 00:59:54,500 ở giữa tờ giấy. 1219 00:59:54,500 --> 00:59:59,591 Ở giữa mảnh giấy, vẽ một khối lập phương. 1220 00:59:59,591 --> 01:00:01,244 >> [CƯỜI] 1221 01:00:01,244 --> 01:00:02,660 DAVID Malan: có gì chúng ta đã học? 1222 01:00:02,660 --> 01:00:03,540 Chúng tôi quá gần. 1223 01:00:03,540 --> 01:00:06,320 1224 01:00:06,320 --> 01:00:09,045 OK, lặp lại nếu bạn có thể, tất cả mọi người. 1225 01:00:09,045 --> 01:00:13,210 >> Đung Ở giữa các mảnh giấy, vẽ một đối tượng, 1226 01:00:13,210 --> 01:00:14,842 trông giống như một khối lập phương. 1227 01:00:14,842 --> 01:00:17,332 >> DAVID Malan: OK, đó là tất cả các bạn có được để làm việc với. 1228 01:00:17,332 --> 01:00:20,010 1229 01:00:20,010 --> 01:00:23,080 Cho phép tôi được phân tích và không quá nhiều quan trọng, 1230 01:00:23,080 --> 01:00:25,720 nhưng để thực hiện yêu cầu bồi thường Victoria chắc chắn 1231 01:00:25,720 --> 01:00:28,967 dường như được suy nghĩ trong rất trừu tượng hóa cao cấp, trong đó 1232 01:00:28,967 --> 01:00:29,800 không phải là không hợp lý. 1233 01:00:29,800 --> 01:00:32,160 Bởi vì nếu không, chúng tôi muốn tất cả là khá bất thường, 1234 01:00:32,160 --> 01:00:35,740 nếu chúng ta có được bao giờ chính xác như vậy với tất cả mọi thứ chúng ta làm trong thế giới. 1235 01:00:35,740 --> 01:00:38,890 >> Nhưng nói đi cho tôi middle-- nghĩ chúng tôi đã vào một ca khúc tốt như vậy 1236 01:00:38,890 --> 01:00:42,340 ở đó, giống như đi đến chính giữa của trang, và sau đó vẽ một hình lập phương. 1237 01:00:42,340 --> 01:00:45,730 Vì vậy, cô đang nghĩ trong trừu tượng, bởi vì cô ấy vẫn xem 1238 01:00:45,730 --> 01:00:48,490 những gì trên màn hình như thực sự là một khối lập phương. 1239 01:00:48,490 --> 01:00:51,185 Nhưng có rất nhiều cơ hội để giải thích đó. 1240 01:00:51,185 --> 01:00:53,560 Và trên thực tế, có rất nhiều cách khác mà bạn có thể thể hiện 1241 01:00:53,560 --> 01:00:55,101 đó, mà tôi sẽ đề xuất trong một thời điểm. 1242 01:00:55,101 --> 01:00:59,770 Vì vậy, ở đây chúng ta có một thân của một whoops-- picture-- 1243 01:00:59,770 --> 01:01:02,830 hóa thân của hình ảnh, do đó, một ít ba chiều với nó, 1244 01:01:02,830 --> 01:01:04,160 đó là tốt đẹp. 1245 01:01:04,160 --> 01:01:08,470 >> Dưới đây là một số khác, nơi mà bạn có cùng, mặc dù nó là loại một khối mở. 1246 01:01:08,470 --> 01:01:12,020 Một số người lấy nó một chút phẳng hơn, hai chiều. 1247 01:01:12,020 --> 01:01:13,910 Và đó là tốt. 1248 01:01:13,910 --> 01:01:17,380 Vậy đấy, thực sự trong trung tâm của tờ giấy. 1249 01:01:17,380 --> 01:01:22,720 Điều này một Tôi nghĩ rằng bạn sẽ như thế, bởi vì nếu chúng tôi đi đây, 1250 01:01:22,720 --> 01:01:25,130 đây là những gì cô đã được mô tả. 1251 01:01:25,130 --> 01:01:29,570 Bây giờ, chúng tôi đề xuất làm thế nào khác chúng ta có thể mô tả tình trạng này. 1252 01:01:29,570 --> 01:01:34,070 >> Quay lại trong ngày, một trong những nhất cách phổ biến hơn để học lập trình 1253 01:01:34,070 --> 01:01:38,900 là viết mã, viết dòng hướng dẫn, 1254 01:01:38,900 --> 01:01:42,640 mà kiểm soát một chút rùa trên màn hình. 1255 01:01:42,640 --> 01:01:45,660 Logo và các biến thể khác của điều này là tên của ngôn ngữ. 1256 01:01:45,660 --> 01:01:47,550 Và những con rùa sống trong một thế giới. 1257 01:01:47,550 --> 01:01:49,970 >> Vì vậy, giả hình chữ nhật này không gian là thế giới của mình. 1258 01:01:49,970 --> 01:01:53,340 Và bạn sẽ bắt đầu bằng assuming-- tôi không thực sự biết làm thế nào để vẽ rùa, 1259 01:01:53,340 --> 01:01:54,740 vì vậy hãy làm điều đó như thế này. 1260 01:01:54,740 --> 01:01:57,340 Và sau đó anh ấy có một vỏ và sau đó có thể một số chân. 1261 01:01:57,340 --> 01:01:59,840 Vì vậy, bạn có thể có chút này nhân vật trên màn hình. 1262 01:01:59,840 --> 01:02:02,270 >> Và các đối tượng này ngôn ngữ lập trình 1263 01:02:02,270 --> 01:02:06,070 đã buộc những con rùa đi lên, xuống, trái, phải 1264 01:02:06,070 --> 01:02:08,420 và để đặt bút xuống hoặc lấy bút của mình lên, 1265 01:02:08,420 --> 01:02:12,720 do đó, ông thực sự có thể vẽ trên màn hình trong thế giới hình chữ nhật rất bằng phẳng này. 1266 01:02:12,720 --> 01:02:16,850 Vì vậy mà tôi nghĩ rằng bạn có thể đi, và nơi mà bạn nên xem xét lặn 1267 01:02:16,850 --> 01:02:19,520 xuống tinh thần khi mô tả hướng dẫn tổng quát hơn, 1268 01:02:19,520 --> 01:02:21,720 Tôi sẽ yêu cầu bồi thường, được đặt của bạn bút xuống trong middle-- 1269 01:02:21,720 --> 01:02:23,100 và chúng tôi sẽ có được thoát khỏi những rùa, bởi vì tôi không thể thực sự 1270 01:02:23,100 --> 01:02:24,680 tiếp tục vẽ anh ấy rất tốt. 1271 01:02:24,680 --> 01:02:27,170 >> Và bây giờ, làm thế nào khác có thể Tôi nói vẽ một hình lập phương? 1272 01:02:27,170 --> 01:02:32,830 Vâng, chúng tôi có thể nói điều gì đó giống như trận hòa một dòng phía đông bắc đường chéo, ví dụ, 1273 01:02:32,830 --> 01:02:35,182 hoặc ở một góc 45 độ trở lên. 1274 01:02:35,182 --> 01:02:36,640 Và đó có thể đã nhận được tôi ở đây. 1275 01:02:36,640 --> 01:02:38,380 Và tôi khá xa từ một khối lập phương. 1276 01:02:38,380 --> 01:02:42,430 Nhưng bây giờ, tôi có thể nói điều gì đó như quay 90 độ sang trái 1277 01:02:42,430 --> 01:02:47,370 và vẽ một dòng bằng chiều dài về phía tây bắc. 1278 01:02:47,370 --> 01:02:49,470 Và tôi có thể tiếp tục với hướng tương tự. 1279 01:02:49,470 --> 01:02:50,720 Và nó sẽ không được dễ dàng. 1280 01:02:50,720 --> 01:02:53,345 Và thẳng thắn, có lẽ chúng ta sẽ đã ở đây năm phút. 1281 01:02:53,345 --> 01:02:59,600 Nhưng có lẽ chúng ta đã có thể nhận để cái gì đó, vào cuối ngày, 1282 01:02:59,600 --> 01:03:04,280 kết thúc lên được một khối lập phương, nhưng chúng tôi lặn bên trong trừu tượng mà 1283 01:03:04,280 --> 01:03:06,370 để làm điều đó ở đó thấp mức độ mà bạn có thể không thực sự 1284 01:03:06,370 --> 01:03:09,795 xem những gì bạn đang làm cho đến khi toàn bộ điều là thực sự có trên trang. 1285 01:03:09,795 --> 01:03:12,670 Và do đó, đây là một nguyên tắc chung, một lần nữa, các programming-- ý tưởng này 1286 01:03:12,670 --> 01:03:13,320 trừu tượng. 1287 01:03:13,320 --> 01:03:15,920 Thật là tuyệt vời mạnh mẽ, bởi vì một lần nữa, 1288 01:03:15,920 --> 01:03:19,281 cô chỉ nói, vẽ một khối lập phương, mà tất cả chúng ta khá nhiều sẽ grok rất nhanh chóng. 1289 01:03:19,281 --> 01:03:21,030 Chúng tôi sẽ chỉ hiểu, OK, vẽ một khối lập phương. 1290 01:03:21,030 --> 01:03:24,030 Chúng ta có thể không biết những định hướng, vì vậy chúng tôi có thể là một chút chính xác hơn, 1291 01:03:24,030 --> 01:03:26,297 nhưng chúng ta thường có thể hình hoặc biết những gì một khối lập phương là. 1292 01:03:26,297 --> 01:03:28,130 Và đó là hữu ích, bởi vì nếu mỗi khi bạn 1293 01:03:28,130 --> 01:03:31,540 ngồi xuống như một lập trình viên tại bàn phím của bạn để viết mã, 1294 01:03:31,540 --> 01:03:33,912 nếu bạn phải nghĩ rằng ở đó một mức độ thấp, không ai trong số chúng tôi 1295 01:03:33,912 --> 01:03:35,120 sẽ không bao giờ có được bất cứ điều gì thực hiện. 1296 01:03:35,120 --> 01:03:38,259 Và chắc chắn, không ai trong số chúng ta sẽ tận hưởng quá trình viết code. 1297 01:03:38,259 --> 01:03:41,550 Nó sẽ giống như viết trong 0 và 1 của, mà thẳng thắn là không phải tất cả là dài trước đây 1298 01:03:41,550 --> 01:03:43,680 con người đã được viết mã trong 0 và 1. 1299 01:03:43,680 --> 01:03:46,960 Và chúng tôi rất nhanh chóng đưa ra những languages-- mức độ cao hơn 1300 01:03:46,960 --> 01:03:49,410 C ++ và Java và những người khác. 1301 01:03:49,410 --> 01:03:52,500 >> Vì vậy, hãy thử điều này một lần nữa chỉ để lật bảng, vì vậy mà tất cả chúng ta 1302 01:03:52,500 --> 01:03:55,450 có cơ hội để suy nghĩ trong chứ không phải theo cùng một cách. 1303 01:03:55,450 --> 01:03:59,230 chúng ta có thể nhận được nhiều hơn một tình nguyện viên này thời gian tới lên bảng và vẽ, 1304 01:03:59,230 --> 01:04:01,480 không niệm? 1305 01:04:01,480 --> 01:04:02,070 Được. 1306 01:04:02,070 --> 01:04:04,820 Ben, đi lên trên. 1307 01:04:04,820 --> 01:04:08,510 Và, Ben, trong trường hợp này, một khi bạn phải đối mặt với hội đồng quản trị, không nhìn trái, 1308 01:04:08,510 --> 01:04:09,370 không nhìn bên phải. 1309 01:04:09,370 --> 01:04:12,367 Chỉ làm những gì bạn các đồng nghiệp ở đây cho bạn biết. 1310 01:04:12,367 --> 01:04:14,950 Và đối với tất cả mọi người khác trong phòng, bây giờ bạn là lập trình viên. 1311 01:04:14,950 --> 01:04:16,020 Anh ấy là máy tính. 1312 01:04:16,020 --> 01:04:21,395 Và hình ảnh tôi đã chọn ở đây trước là một trong những điều này ở đây. 1313 01:04:21,395 --> 01:04:24,490 1314 01:04:24,490 --> 01:04:27,660 Họ đang just-- họ đang suy nghĩ của một trò đùa vui là tất cả. 1315 01:04:27,660 --> 01:04:31,510 >> Vì vậy, sẽ không ai muốn tình nguyện hướng dẫn đầu tiên 1316 01:04:31,510 --> 01:04:35,470 hoặc tuyên bố rằng nên bút lệnh của Ben? 1317 01:04:35,470 --> 01:04:40,850 Và chúng tôi sẽ làm việc này chung, có thể một hướng dẫn từ mỗi người. 1318 01:04:40,850 --> 01:04:41,440 Tôi xin lôi? 1319 01:04:41,440 --> 01:04:42,440 >> Đung Vẽ một vòng tròn. 1320 01:04:42,440 --> 01:04:45,866 DAVID Malan: Vẽ một vòng tròn là điều đầu tiên tôi nghe nói. 1321 01:04:45,866 --> 01:04:47,100 >> Đung Up top. 1322 01:04:47,100 --> 01:04:48,140 >> DAVID Malan: Lên đỉnh. 1323 01:04:48,140 --> 01:04:52,504 OK, chúng ta có thể cho phép bạn xóa, lùi lại. 1324 01:04:52,504 --> 01:04:53,420 Và bây giờ, một người khác. 1325 01:04:53,420 --> 01:04:55,994 Dan, bạn sẽ được thoải mái cung cấp các hướng dẫn tiếp theo? 1326 01:04:55,994 --> 01:05:02,070 >> Đung chắc, vẽ trung tâm đáy của hình tròn, 1327 01:05:02,070 --> 01:05:07,121 với một small-- một chút không gian nhỏ từ đó, 1328 01:05:07,121 --> 01:05:15,420 vẽ một đường thẳng xuống ba phần tư đường xuống tàu 1329 01:05:15,420 --> 01:05:17,845 một góc nhỏ bên trái của bạn. 1330 01:05:17,845 --> 01:05:21,250 1331 01:05:21,250 --> 01:05:22,620 >> DAVID Malan: Tốt. 1332 01:05:22,620 --> 01:05:24,086 >> Đung góc nhẹ. 1333 01:05:24,086 --> 01:05:32,807 >> DAVID Malan: Undo, Control-Z. ĐƯỢC. 1334 01:05:32,807 --> 01:05:34,890 Andrew, bạn muốn cung cấp lên các hướng dẫn tiếp theo? 1335 01:05:34,890 --> 01:05:35,515 >> Đung chắc. 1336 01:05:35,515 --> 01:05:43,250 Từ đáy của dòng đó, một angle-- nhẹ hơn nữa 1337 01:05:43,250 --> 01:05:49,024 whoops-- có lẽ khoảng một phần ba chiều dài [IM LẶNG], 1338 01:05:49,024 --> 01:05:52,928 góc nhỏ xuống và như một thứ ba của chiều dài của [IM LẶNG]. 1339 01:05:52,928 --> 01:05:57,550 1340 01:05:57,550 --> 01:06:00,578 Vì vậy, yeah, từ thời điểm đó, vẽ một đường một phần ba 1341 01:06:00,578 --> 01:06:04,150 chiều dài của trước dòng thêm bên trái. 1342 01:06:04,150 --> 01:06:08,416 1343 01:06:08,416 --> 01:06:10,040 >> DAVID Malan: Đó là OK? 1344 01:06:10,040 --> 01:06:12,330 đường thẳng, đó là OK? 1345 01:06:12,330 --> 01:06:14,900 OK, Olivier, bạn muốn đề nghị đưa ra tiếp theo? 1346 01:06:14,900 --> 01:06:28,564 >> Đung [IM LẶNG] từ đáy của hình tròn, [IM LẶNG]. 1347 01:06:28,564 --> 01:06:32,000 1348 01:06:32,000 --> 01:06:45,126 Vẽ ở phía bên tay phải của [IM LẶNG] cm. 1349 01:06:45,126 --> 01:06:46,560 >> [CƯỜI] 1350 01:06:46,560 --> 01:06:49,872 >> DAVID Malan: Tôi nghĩ rằng bạn đang đi để phải chuyển đổi đó là inches đây. 1351 01:06:49,872 --> 01:06:50,764 >> Đung Dừng. 1352 01:06:50,764 --> 01:06:52,186 >> [CƯỜI] 1353 01:06:52,186 --> 01:06:54,570 >> DAVID Malan: OK. 1354 01:06:54,570 --> 01:06:56,660 [? Ara,?] Bạn muốn đề nghị đưa ra tiếp theo? 1355 01:06:56,660 --> 01:07:00,653 1356 01:07:00,653 --> 01:07:15,443 >> Đung Vẽ một [IM LẶNG] phía trên [IM LẶNG] giống nhau. 1357 01:07:15,443 --> 01:07:28,829 [IM LẶNG] vòng tròn, vẽ vào [IM LẶNG] và vẽ [IM LẶNG]. 1358 01:07:28,829 --> 01:07:33,799 1359 01:07:33,799 --> 01:07:36,730 >> DAVID Malan: OK, không lùi lại. 1360 01:07:36,730 --> 01:07:38,390 Hãy làm nhiều hơn một hoặc hai hướng dẫn. 1361 01:07:38,390 --> 01:07:40,825 Chris, bạn muốn cung cấp một? 1362 01:07:40,825 --> 01:07:46,182 >> Đung Ở phía dưới của vòng tròn, [IM LẶNG] 1363 01:07:46,182 --> 01:07:51,528 vẽ một đường dốc bằng xuống bên trái [IM LẶNG]. 1364 01:07:51,528 --> 01:07:59,304 1365 01:07:59,304 --> 01:08:00,590 >> DAVID Malan: OK. 1366 01:08:00,590 --> 01:08:01,170 Andrew? 1367 01:08:01,170 --> 01:08:02,472 Chúng tôi did-- Karim? 1368 01:08:02,472 --> 01:08:06,891 1369 01:08:06,891 --> 01:08:13,765 >> Đung Bắt đầu từ dòng bên phải, cuối của đường bên trái, phía dưới, 1370 01:08:13,765 --> 01:08:21,012 bạn sẽ đi đúng về chiều dài tương tự như dòng 1371 01:08:21,012 --> 01:08:27,680 bạn đang ở trên, vẽ để bên phải [IM LẶNG]. 1372 01:08:27,680 --> 01:08:33,572 1373 01:08:33,572 --> 01:08:37,991 [IM LẶNG] độ, vì vậy [IM LẶNG] bằng cấp ra ở phía bên phải. 1374 01:08:37,991 --> 01:08:41,919 1375 01:08:41,919 --> 01:08:43,500 >> DAVID Malan: Tất cả các quyền. 1376 01:08:43,500 --> 01:08:44,029 Hãy tạm dừng. 1377 01:08:44,029 --> 01:08:44,950 Đừng quay lại nào. 1378 01:08:44,950 --> 01:08:46,783 Hãy tạm dừng, và chúng ta hãy thử một nỗ lực khác 1379 01:08:46,783 --> 01:08:48,850 trước khi chúng tôi tiết lộ cho Ben những gì anh ta đã vẽ. 1380 01:08:48,850 --> 01:08:51,189 bạn có thể shuffle Ben các right-- hoặc thực sự, 1381 01:08:51,189 --> 01:08:54,080 không, chúng ta hãy chỉ cho bạn hội đồng quản trị khác, thậm chí còn tốt hơn. 1382 01:08:54,080 --> 01:08:57,640 Vì vậy, một người nào đó tại thích để có nhiều cách tiếp cận này 1383 01:08:57,640 --> 01:09:02,149 Victoria mất trước đó, nơi chúng tôi nói chuyện ở một mức độ trừu tượng cao hơn 1384 01:09:02,149 --> 01:09:05,149 và chỉ trong một câu hoặc hai mô tả cho Ben 1385 01:09:05,149 --> 01:09:07,229 những gì để vẽ mà không cần đi vào cỏ dại, 1386 01:09:07,229 --> 01:09:10,670 vậy để nói chuyện, lúc này một mức độ thấp hơn? 1387 01:09:10,670 --> 01:09:11,206 Victoria. 1388 01:09:11,206 --> 01:09:11,706 [CƯỜI] 1389 01:09:11,706 --> 01:09:14,249 Đung Vẽ một con số của người đàn ông đi bộ. 1390 01:09:14,249 --> 01:09:18,866 Và chân và cánh tay của mình phải là phía bên phải. 1391 01:09:18,866 --> 01:09:20,505 >> DAVID Malan: OK, đó là tất cả các bạn nhận được. 1392 01:09:20,505 --> 01:09:27,210 1393 01:09:27,210 --> 01:09:27,710 Tất cả các quyền. 1394 01:09:27,710 --> 01:09:31,609 Tại sao chúng ta không tiết lộ cho Ben những gì ông đã làm. 1395 01:09:31,609 --> 01:09:32,890 Vì vậy, một tràng pháo tay. 1396 01:09:32,890 --> 01:09:35,700 Đó là khó khăn nhất có lẽ. 1397 01:09:35,700 --> 01:09:37,931 >> Vì vậy, mặc dù chúng ta đang nói trong điều kiện khá ngớ ngẩn 1398 01:09:37,931 --> 01:09:39,680 về chỉ vẽ hình ảnh, hy vọng bạn 1399 01:09:39,680 --> 01:09:44,226 thực sự có thể đánh giá mức độ biểu cảm mà có thể là cần thiết 1400 01:09:44,226 --> 01:09:45,850 để nói với một máy tính phải làm gì. 1401 01:09:45,850 --> 01:09:50,370 Và trên thực tế, thực tế là Ben đã có thể vẽ này một cách nhanh chóng 1402 01:09:50,370 --> 01:09:54,227 là loại minh chứng cho cách sử dụng một ngôn ngữ, có thể là một mức độ cao hơn 1403 01:09:54,227 --> 01:09:57,060 phiên bản tiếng Anh, cho phép anh ta chỉ cần sử dụng từ ngữ, hoặc nghe lời 1404 01:09:57,060 --> 01:09:59,990 từ Victoria, cho phép anh ta những abstractions-- chỉ cần vẽ 1405 01:09:59,990 --> 01:10:03,020 một con số đi bộ đến right-- rằng loại có 1406 01:10:03,020 --> 01:10:07,100 một số ý nghĩa ngữ nghĩa để nó mà không phải là gần như là hiển nhiên khi bạn chỉ 1407 01:10:07,100 --> 01:10:10,310 nói, đặt bút xuống, vẽ bên phải, vẽ bên trái. 1408 01:10:10,310 --> 01:10:12,420 >> Và do đó, đây cũng là rất phổ biến trong lập trình. 1409 01:10:12,420 --> 01:10:15,253 Điều này sẽ được cho là giống như một ngôn ngữ cấp rất thấp, lập trình 1410 01:10:15,253 --> 01:10:16,730 trong 0 và 1 nếu bạn muốn. 1411 01:10:16,730 --> 01:10:19,320 Và đây sẽ là một mức độ cao hơn ngôn ngữ lập trình Java, 1412 01:10:19,320 --> 01:10:20,278 hay đại loại thế. 1413 01:10:20,278 --> 01:10:22,050 Một chút của một sự đơn giản, nhưng đó là 1414 01:10:22,050 --> 01:10:24,310 các loại giống như cảm xúc cảm giác mà bạn cảm nhận được khi 1415 01:10:24,310 --> 01:10:26,630 sử dụng một loại điều này hay cách khác. 1416 01:10:26,630 --> 01:10:32,650 Một chút thất vọng ở đây bởi nhu cầu cho độ chính xác như vậy, nhưng cơ hội 1417 01:10:32,650 --> 01:10:34,930 được một chút lỏng hơn với việc giải thích ở đây. 1418 01:10:34,930 --> 01:10:38,060 Nhưng tất nhiên, lỗi có thể phát sinh như là kết quả. 1419 01:10:38,060 --> 01:10:40,500 >> Nếu bạn muốn ở home-- chúng tôi sẽ không làm điều này một trong class-- 1420 01:10:40,500 --> 01:10:41,900 nhưng nếu bạn muốn mang lại một cơ hội này, 1421 01:10:41,900 --> 01:10:43,387 Tôi nghĩ chúng tôi sẽ bổ nhào vào trong này. 1422 01:10:43,387 --> 01:10:45,970 Vì vậy, nếu bạn muốn chơi trò này trò chơi với trọng khác của bạn 1423 01:10:45,970 --> 01:10:49,180 hoặc trẻ em hoặc tương tự, bạn có thể thưởng thức điều đó là tốt. 1424 01:10:49,180 --> 01:10:54,460 >> Vì vậy, chúng ta hãy đi trước và nhìn vào một cuối cùng điều đây để tư duy tính toán. 1425 01:10:54,460 --> 01:10:57,010 Và điều đó đưa chúng ta đến John Oliver, không cho clip 1426 01:10:57,010 --> 01:11:00,070 bạn có thể đã thấy đêm qua, nhưng đến một vấn đề nào gần đây. 1427 01:11:00,070 --> 01:11:03,310 Một vài tháng trở lại, Volkswagen mất khá nhiều pháo phòng không 1428 01:11:03,310 --> 01:11:05,651 lý do gì, nếu bạn biết? 1429 01:11:05,651 --> 01:11:07,025 họ đã có được những gì rắc rối không? 1430 01:11:07,025 --> 01:11:10,270 1431 01:11:10,270 --> 01:11:14,030 >> Yeah, vì vậy họ emissions-- đã cố gắng để đánh bại thải 1432 01:11:14,030 --> 01:11:19,100 kiểm tra bởi bản chất của họ có xe gây ô nhiễm môi trường ít 1433 01:11:19,100 --> 01:11:23,620 khi chiếc xe của họ đã được thử nghiệm và gây ô nhiễm môi trường hơn 1434 01:11:23,620 --> 01:11:25,547 khi những chiếc xe đã không được kiểm tra. 1435 01:11:25,547 --> 01:11:28,630 Và những gì ngày càng thú vị trên thế giới, như bạn có thể suy ra 1436 01:11:28,630 --> 01:11:34,072 từ các cuộc thảo luận của like-- là gì it-- CarPlay, phần mềm của Apple cho xe ô tô 1437 01:11:34,072 --> 01:11:35,780 và thực tế là nhiều của chúng tôi ngày càng 1438 01:11:35,780 --> 01:11:38,390 có màn hình cảm ứng trong xe hơi của chúng tôi, có một số lượng đáng sợ 1439 01:11:38,390 --> 01:11:41,250 phần mềm trong nhân dân xe hiện nay, mà 1440 01:11:41,250 --> 01:11:45,650 thẳng thắn mở một lon cả giun khi nói đến bảo mật và nguy cơ vật lý. 1441 01:11:45,650 --> 01:11:48,070 Nhưng hôm nay, chúng ta hãy chỉ tập trung vào những gì 1442 01:11:48,070 --> 01:11:52,170 tham gia viết phần mềm mà có thể đã bị đánh lừa hệ thống. 1443 01:11:52,170 --> 01:11:54,510 >> Đối với định nghĩa của vấn đề, đối với những người không quen, 1444 01:11:54,510 --> 01:11:55,740 chúng ta hãy nhìn vào John Oliver. 1445 01:11:55,740 --> 01:11:58,115 Và đối với những người quen thuộc với vấn đề, chúng ta hãy nhìn vào nó 1446 01:11:58,115 --> 01:12:00,480 trong một ống kính vui nhộn qua John Oliver là tốt. 1447 01:12:00,480 --> 01:12:05,810 Vì vậy, hãy để tôi nhấn play về điều này, tôi nghĩ, giới thiệu ba phút. 1448 01:12:05,810 --> 01:12:07,074 Chết tiệt. 1449 01:12:07,074 --> 01:12:07,740 [XEM LẠI VIDEO] 1450 01:12:07,740 --> 01:12:08,170 -Cars-- 1451 01:12:08,170 --> 01:12:09,919 DAVID Malan: Rõ ràng, trên YouTube, it's-- 1452 01:12:09,919 --> 01:12:12,500 - --Thư Nhân vật thông minh nhất Fast and Furious phim. 1453 01:12:12,500 --> 01:12:16,080 Tuần này, hãng xe Đức Volkswagen thấy mình 1454 01:12:16,080 --> 01:12:19,430 ở giữa một vụ bê bối của tỷ lệ có khả năng phạm tội. 1455 01:12:19,430 --> 01:12:23,020 >> -Volkswagen Được giằng cho tỷ tiền phạt, phí hình sự có thể 1456 01:12:23,020 --> 01:12:25,530 cho giám đốc điều hành của nó, như công ty xin lỗi 1457 01:12:25,530 --> 01:12:28,790 cho gian lận 11 triệu xe ô tô giúp nó đánh bại kiểm tra khí thải. 1458 01:12:28,790 --> 01:12:32,110 >> mô hình động cơ diesel -Certain được thiết kế với phần mềm tinh vi 1459 01:12:32,110 --> 01:12:35,410 thông tin đã qua sử dụng, bao gồm cả vị trí của tay lái và xe 1460 01:12:35,410 --> 01:12:38,820 tốc độ, để xác định chiếc xe trải qua thử nghiệm khí thải. 1461 01:12:38,820 --> 01:12:42,620 Trong bối cảnh đó, động cơ sẽ làm giảm lượng khí thải độc hại. 1462 01:12:42,620 --> 01:12:46,040 Nhưng chiếc xe đã bị để bỏ qua khi nó đã được lái. 1463 01:12:46,040 --> 01:12:51,370 Khí thải tăng 10-40 lần cao hơn mức EPA chấp nhận được. 1464 01:12:51,370 --> 01:12:55,920 >> -Wow, 10-40 lần lớn hơn EPA cho phép. 1465 01:12:55,920 --> 01:12:59,570 Đó là điều tồi tệ nhất Volkswagen đã từng làm, 1466 01:12:59,570 --> 01:13:04,200 là một cái gì đó bạn có thể nói nếu bạn không bao giờ nghe nói về chiến tranh thế giới II. 1467 01:13:04,200 --> 01:13:09,710 Nhưng có lẽ là dấu hiệu chắc chắn nhất của cách nhiều rắc rối Volkswagen là trong, 1468 01:13:09,710 --> 01:13:12,730 là những người ở rất hàng đầu đã bước xuống. 1469 01:13:12,730 --> 01:13:16,320 Các giám đốc điều hành từ chức hôm thứ Tư sau khi lộn để làm kiểm soát thiệt hại, 1470 01:13:16,320 --> 01:13:20,380 nói rằng ông đã không ngừng xin lỗi, mà có vẻ tuyệt vời cho đến khi nó bật ra 1471 01:13:20,380 --> 01:13:22,920 ông chỉ có 10% lỗi nhưng đã lắp miệng 1472 01:13:22,920 --> 01:13:25,600 để làm tăng giả tạo sorriness mình. 1473 01:13:25,600 --> 01:13:29,700 Và khi đó, Volkswagen của Mỹ trưởng đã có một lời xin lỗi của mình. 1474 01:13:29,700 --> 01:13:33,580 >> -Let Làm rõ về điều này, công ty chúng tôi là trung thực. 1475 01:13:33,580 --> 01:13:37,140 Và trong các từ tiếng Đức của tôi, chúng tôi đã hoàn toàn hơi say lên. 1476 01:13:37,140 --> 01:13:41,360 >> -Vâng, Nhưng hoàn toàn screwed lên không phải tác phẩm Đức. 1477 01:13:41,360 --> 01:13:43,750 Và ngôn ngữ Đức có nhiều cụm từ đẹp 1478 01:13:43,750 --> 01:13:50,070 để mô tả tình huống như thế này, chẳng hạn như [GERMAN], có nghĩa là khoảng, 1479 01:13:50,070 --> 01:13:52,870 nỗi buồn mà đi từ những lời nói dối kinh doanh liên quan, 1480 01:13:52,870 --> 01:13:59,060 hoặc [GERMAN], mà dịch như shaming cha những người liên quan 1481 01:13:59,060 --> 01:14:00,352 mây của xăng. 1482 01:14:00,352 --> 01:14:02,060 Đó là một ngôn ngữ đẹp. 1483 01:14:02,060 --> 01:14:04,660 Nó chỉ buồm ra khỏi lưỡi. 1484 01:14:04,660 --> 01:14:07,920 Và bằng cách này, trong khi đó con người lời xin lỗi có thể đã nghe chân thành, 1485 01:14:07,920 --> 01:14:12,260 đó là đáng chú ý, ông đã phát biểu tại một bên mắt chính thức cho năm 2016 1486 01:14:12,260 --> 01:14:17,310 Volkswagen Passat, có nghĩa là trong thời gian ngắn sau khi nói lời xin lỗi, ông nói này. 1487 01:14:17,310 --> 01:14:18,850 >> -Thank Bạn rất nhiều vì đã đến. 1488 01:14:18,850 --> 01:14:19,630 Hãy tận hưởng những buổi tối. 1489 01:14:19,630 --> 01:14:21,300 Up tiếp theo là Lenny Kravitz. 1490 01:14:21,300 --> 01:14:24,640 >> [NHẠC] 1491 01:14:24,640 --> 01:14:28,230 >> -Ok, OK, kết thúc của bạn lời xin lỗi với lên tới 1492 01:14:28,230 --> 01:14:31,940 Lenny Kravitz không hét lên năn tỉnh táo. 1493 01:14:31,940 --> 01:14:35,830 Nó hét lên, chúng tôi hỏi Bon Jovi, và ông nói không có. 1494 01:14:35,830 --> 01:14:38,600 thương hiệu Volkswagen có bị hư hỏng nặng. 1495 01:14:38,600 --> 01:14:42,466 Và thẳng thắn, quảng cáo mới của họ chiến dịch không chính xác giúp. 1496 01:14:42,466 --> 01:14:47,289 >> - [GERMAN], chúng tôi tại Volkswagen muốn xin lỗi vì đã lừa dối bạn 1497 01:14:47,289 --> 01:14:47,930 xe của chúng tôi. 1498 01:14:47,930 --> 01:14:48,513 >> [END PLAYBACK] 1499 01:14:48,513 --> 01:14:54,090 DAVID Malan: Vì vậy, đây là một cách vòng xoay lượng-- sorry-- 1500 01:14:54,090 --> 01:14:58,730 đây là một cách vòng xoay của giới thiệu một vấn đề cơ bản 1501 01:14:58,730 --> 01:15:02,810 trong phần mềm, đó là bạn cần phải phát hiện các điều kiện nhất định. 1502 01:15:02,810 --> 01:15:07,680 Và vì vậy câu hỏi ở bàn tay ở đây là, làm thế nào một chiếc xe có khả năng, 1503 01:15:07,680 --> 01:15:09,870 như thực hiện trong phần mềm bởi các lập trình viên, 1504 01:15:09,870 --> 01:15:11,850 phát hiện rằng nó thực sự được thử nghiệm? 1505 01:15:11,850 --> 01:15:14,150 Vì vậy, để được siêu rõ ràng, họ đang làm gì 1506 01:15:14,150 --> 01:15:17,940 là, trong các môi trường các lập trình viên đã tìm 1507 01:15:17,940 --> 01:15:20,460 xe đã được thử nghiệm, họ bằng cách nào đó làm 1508 01:15:20,460 --> 01:15:24,840 xe phát ra khí thải ít hơn, ít hơn khí thải, khói nên ít độc hại 1509 01:15:24,840 --> 01:15:25,470 và như vậy. 1510 01:15:25,470 --> 01:15:27,261 Nhưng khi đó là bình thường lái xe trên đường, 1511 01:15:27,261 --> 01:15:30,350 nó sẽ chỉ phát ra càng nhiều ô nhiễm như nó muốn. 1512 01:15:30,350 --> 01:15:33,870 >> Vậy làm thế nào chúng ta có thể viết giả cho thuật toán này? 1513 01:15:33,870 --> 01:15:37,820 Làm thế nào chúng ta có thể viết mã giả cho các phần mềm chạy trong xe? 1514 01:15:37,820 --> 01:15:43,390 Tôi có nghĩa là, trong Tóm lại, nó nắm xuống đến một cái gì đó như thế này. 1515 01:15:43,390 --> 01:15:48,000 nếu đang được thử nghiệm, thải ít hơn. 1516 01:15:48,000 --> 01:15:50,750 khác phát ra nhiều hơn. 1517 01:15:50,750 --> 01:15:52,630 Nhưng đó là một chút quá cao, phải không? 1518 01:15:52,630 --> 01:15:58,580 >> Hãy cố gắng nhảy vào như những gì này trừu tượng của là phương tiện kiểm tra. 1519 01:15:58,580 --> 01:16:06,340 Nói cách khác, ngay cả khi bạn không biết gì về xe ô tô, những loại câu hỏi 1520 01:16:06,340 --> 01:16:13,440 bạn có thể hỏi để xác định xem bạn đang được thử nghiệm, nếu bạn là xe? 1521 01:16:13,440 --> 01:16:19,638 Đặc điểm gì có thể trình bày nếu một chiếc xe đang được thử nghiệm? 1522 01:16:19,638 --> 01:16:21,026 >> Đung: Kiểm tra thiết bị. 1523 01:16:21,026 --> 01:16:22,420 >> DAVID Malan: thiết bị thử nghiệm. 1524 01:16:22,420 --> 01:16:26,060 Vì vậy, nếu thiết bị kiểm tra gần đó, sau đó phát ra ít hơn. 1525 01:16:26,060 --> 01:16:28,669 Vì vậy, tôi có thể tưởng tượng được thực hiện rằng với một số loại máy ảnh 1526 01:16:28,669 --> 01:16:29,960 hoặc phát hiện những gì xung quanh bạn. 1527 01:16:29,960 --> 01:16:32,870 Và hãy để tôi đề nghị, mà chỉ cảm thấy quá phức tạp 1528 01:16:32,870 --> 01:16:37,914 để thực sự có thêm phần cứng chỉ cho mục đích đó. 1529 01:16:37,914 --> 01:16:44,830 >> Đung Nếu bạn đang ở trong công viên, nếu mui xe của bạn đang mở. 1530 01:16:44,830 --> 01:16:47,320 >> DAVID Malan: Trong công viên hoặc mui xe mở, vì vậy đó là tốt. 1531 01:16:47,320 --> 01:16:47,420 >> Đung Và xe chạy. 1532 01:16:47,420 --> 01:16:50,480 >> DAVID Malan: Vì vậy, đó là một chút hơn concrete-- và xe chạy. 1533 01:16:50,480 --> 01:16:55,690 Vì vậy, đây sẽ là sự kết hợp của một vài điều kiện khác nhau, nếu bạn muốn. 1534 01:16:55,690 --> 01:16:59,227 Vì vậy, nếu xe trong công viên, và thậm chí mặc dù đây là một điều rất cơ khí 1535 01:16:59,227 --> 01:17:01,060 thường, tôi có thể tưởng tượng viết phần mềm, 1536 01:17:01,060 --> 01:17:03,476 đặc biệt là bởi vì có thường là một ánh sáng có những ngày này, 1537 01:17:03,476 --> 01:17:07,400 Tôi có thể tưởng tượng có được phần mềm có thể truy vấn các shifter 1538 01:17:07,400 --> 01:17:10,634 hoặc những gì không, là bạn trong công viên, là bạn trong ổ đĩa, bạn có chiều ngược lại. 1539 01:17:10,634 --> 01:17:12,550 Và tôi có thể lấy lại một trả lời đó là một trong hai có 1540 01:17:12,550 --> 01:17:14,400 hoặc không đối với những loại câu hỏi. 1541 01:17:14,400 --> 01:17:17,630 >> Và vì vậy tôi cũng có thể có lẽ trả lời một câu hỏi như thế, là mui xe mở. 1542 01:17:17,630 --> 01:17:21,860 Có lẽ, có một số loại cảm biến đó hoặc là mang lại cho tôi trở lại một 1 hoặc 0, 1543 01:17:21,860 --> 01:17:23,720 đúng hay sai, mui xe được mở. 1544 01:17:23,720 --> 01:17:28,180 Và sau đó xe chạy, tôi có thể phát hiện rằng bằng cách nào đó qua những gì cơ? 1545 01:17:28,180 --> 01:17:30,430 Giống như, khi xe đang chạy, tôi có thể phát hiện nó trên, 1546 01:17:30,430 --> 01:17:32,127 Tôi có thể phát hiện bằng cách nào đó rằng chiếc xe đang chuyển động? 1547 01:17:32,127 --> 01:17:32,881 >> Đung RPM. 1548 01:17:32,881 --> 01:17:35,190 >> DAVID Malan: Yeah, vì vậy luôn cây kim mà 1549 01:17:35,190 --> 01:17:38,034 cho bạn biết có bao nhiêu vòng một phút các bánh xe đang gặp phải. 1550 01:17:38,034 --> 01:17:39,200 Và vì vậy tôi có thể nhìn vào đó. 1551 01:17:39,200 --> 01:17:43,090 Và nếu nó không phải là 0, mà có lẽ nghĩa là chiếc xe đang chuyển động. 1552 01:17:43,090 --> 01:17:45,400 Nhưng chúng ta phải có một chút cẩn thận đó, 1553 01:17:45,400 --> 01:17:49,780 because-- hãy đơn giản hóa này-- nếu chúng ta chỉ nói, nếu xe chạy, 1554 01:17:49,780 --> 01:17:53,070 chúng tôi không muốn chỉ cần phát ra ít hơn, chúng tôi muốn nếu xe đang chạy 1555 01:17:53,070 --> 01:17:54,310 và nó đang được thử nghiệm. 1556 01:17:54,310 --> 01:17:56,320 >> Vì vậy, có một vài khác thành phần mà folks 1557 01:17:56,320 --> 01:18:00,550 đã đưa ra giả thuyết các phần mềm đang làm, vì vắng mặt mã nguồn thực tế, 1558 01:18:00,550 --> 01:18:05,130 bạn chỉ có thể loại suy ra từ hiệu ứng vật lý của xe như những gì 1559 01:18:05,130 --> 01:18:08,280 có thể xảy ra bên dưới mui xe trong phần mềm. 1560 01:18:08,280 --> 01:18:17,090 Vì vậy, nếu xe chạy và có thể, nói, bánh sau không di chuyển, 1561 01:18:17,090 --> 01:18:19,420 điều này có thể được chỉ định của một số loại xét nghiệm? 1562 01:18:19,420 --> 01:18:22,830 Tôi gợi ý gì ở đây? 1563 01:18:22,830 --> 01:18:24,830 Ừ, có lẽ, đó là trên một những điều con lăn, 1564 01:18:24,830 --> 01:18:28,340 nơi như bánh xe đang chuyển ở phía trước hoặc ở phía sau, 1565 01:18:28,340 --> 01:18:32,570 tùy thuộc vào việc nó là bánh xe phía trước hoặc ổ bánh xe phía sau, do đó một nửa của các bánh xe 1566 01:18:32,570 --> 01:18:34,420 là di chuyển, nhưng Hai người khác là không, 1567 01:18:34,420 --> 01:18:36,320 là một tình huống kỳ lạ trong thế giới thực. 1568 01:18:36,320 --> 01:18:38,110 Nếu bạn đang lái xe trên đường, mà không nên xảy ra. 1569 01:18:38,110 --> 01:18:40,568 Nhưng nếu bạn đang ở trong một nhà kho trên một số loại hệ thống con lăn, 1570 01:18:40,568 --> 01:18:41,630 mà thực sự có thể xảy ra. 1571 01:18:41,630 --> 01:18:46,980 >> Tôi nghĩ rằng folks cũng đề xuất rằng có lẽ, nếu xe đang chạy và lái 1572 01:18:46,980 --> 01:18:51,300 bánh xe không chuyển động, mà quá có thể là một tín hiệu, 1573 01:18:51,300 --> 01:18:54,090 bởi vì đó là hợp lý cho như một thẳng trên một con đường. 1574 01:18:54,090 --> 01:18:57,960 Nhưng thậm chí sau đó, con người có lẽ là di chuyển nó một chút hoặc chắc chắn 1575 01:18:57,960 --> 01:18:59,100 trong một vài giây. 1576 01:18:59,100 --> 01:19:01,030 Hoặc các khóa học của một phút, tỷ lệ cược là nó không 1577 01:19:01,030 --> 01:19:03,510 sẽ được gắn bó trong chính xác các vị trí tương tự. 1578 01:19:03,510 --> 01:19:05,440 >> Vì vậy, nói cách khác, chúng ta có thể mất trừ, 1579 01:19:05,440 --> 01:19:08,200 là bạn đang được thử nghiệm, và phá vỡ chức năng 1580 01:19:08,200 --> 01:19:10,420 vào các thành phần thành phần. 1581 01:19:10,420 --> 01:19:13,440 Và đó thực sự là những gì của Volkswagen kỹ sư bằng cách nào đó đã làm. 1582 01:19:13,440 --> 01:19:17,070 Họ đã viết phần mềm có ý thức để phát hiện, nếu chiếc xe đang được thử nghiệm, 1583 01:19:17,070 --> 01:19:20,440 do đó phát ra ít hơn, khác phát ra theo cách thông thường. 1584 01:19:20,440 --> 01:19:22,690 >> Và vấn đề ở đây, là phần mềm không phải là 1585 01:19:22,690 --> 01:19:26,080 một cái gì đó bạn thực sự có thể xem trừ bạn có mã nguồn được gọi là. 1586 01:19:26,080 --> 01:19:29,060 Vì vậy, có hai loại khác nhau của code-- ít nhất là hai loại khác nhau 1587 01:19:29,060 --> 01:19:30,130 mã trên thế giới. 1588 01:19:30,130 --> 01:19:33,150 Có một cái gì đó gọi là nguồn mã, mà không phải là không giống như những gì 1589 01:19:33,150 --> 01:19:37,240 chúng tôi đã viết, mã nguồn. 1590 01:19:37,240 --> 01:19:40,099 >> Đây là mã nguồn viết bằng một ngôn ngữ được gọi là giả, 1591 01:19:40,099 --> 01:19:41,640 mà chỉ là một cái gì đó bằng tiếng Anh giống như. 1592 01:19:41,640 --> 01:19:43,140 Không có định nghĩa chính thức của nó. 1593 01:19:43,140 --> 01:19:46,770 Nhưng C và Java, C ++, những là tất cả các ngôn ngữ chính thức rằng, 1594 01:19:46,770 --> 01:19:50,610 khi bạn viết trong họ, những gì bạn có là một tập tin văn bản có chứa mã nguồn. 1595 01:19:50,610 --> 01:19:54,850 >> Nhưng đó cũng là một cái gì đó trong thế giới gọi là mã máy. 1596 01:19:54,850 --> 01:20:00,579 Và mã máy, không may, chỉ là 0 và 1. 1597 01:20:00,579 --> 01:20:02,870 Vì vậy, mã máy là gì máy hiểu, tất nhiên. 1598 01:20:02,870 --> 01:20:04,470 mã nguồn là những gì con người hiểu được. 1599 01:20:04,470 --> 01:20:08,390 >> Và nói chung, nhưng không luôn, có một chương trình 1600 01:20:08,390 --> 01:20:14,090 mà một lập trình sử dụng mà mất nguồn mã và biến nó thành mã máy. 1601 01:20:14,090 --> 01:20:17,400 Và chương trình đó là thường được gọi là một trình biên dịch. 1602 01:20:17,400 --> 01:20:19,820 Vì vậy, đầu vào của bạn là mã nguồn, đầu ra của bạn là mã máy, 1603 01:20:19,820 --> 01:20:22,890 và trình biên dịch là một mảnh phần mềm mà không quá trình đó. 1604 01:20:22,890 --> 01:20:26,260 Vì vậy, đây thực sự bản đồ độc đáo để đầu vào của chúng tôi, các thuật toán, kết quả đầu ra. 1605 01:20:26,260 --> 01:20:30,400 >> Nhưng đây là một hóa thân rất cụ thể đó, mà là để nói rằng, 1606 01:20:30,400 --> 01:20:34,200 thậm chí nếu bạn sở hữu một trong Volkswagen chiếc xe đó là phạm tội này, 1607 01:20:34,200 --> 01:20:38,390 nó không giống như bạn chỉ có thể mở mui xe hoặc mở tay của người sử dụng hoặc tìm 1608 01:20:38,390 --> 01:20:42,690 vào mã nguồn, bởi vì theo thời gian nó đạt đến xe của bạn trong đường lái xe của bạn, 1609 01:20:42,690 --> 01:20:45,580 nó đã được chuyển đổi thành 0 và 1. 1610 01:20:45,580 --> 01:20:51,310 Và nó rất khó, không phải không thể, nhưng rất khó để thu thập nhiều bất cứ điều gì 1611 01:20:51,310 --> 01:20:53,710 từ chỉ cần nhìn vào nằm dưới 0 và 1. 1612 01:20:53,710 --> 01:20:57,150 Vì vậy, bạn có thể con số nó ra, cuối cùng, nếu bạn hiểu làm thế nào một máy vận hành-- 1613 01:20:57,150 --> 01:20:59,870 Intel inside-- nếu bạn hiểu kiến trúc Intel, 1614 01:20:59,870 --> 01:21:01,440 nhưng nó tốn thời gian rất. 1615 01:21:01,440 --> 01:21:05,010 Và ngay cả ở đó, có lẽ bạn không thể nhìn thấy tất cả mọi thứ 1616 01:21:05,010 --> 01:21:08,220 rằng các mã thực sự có thể làm. 1617 01:21:08,220 --> 01:21:12,521 >> Mọi thắc mắc về việc này hay này loại quá trình nói chung? 1618 01:21:12,521 --> 01:21:15,134 1619 01:21:15,134 --> 01:21:18,300 Và trên thực tế, chúng ta có thể buộc cuộc thảo luận này để thảo luận ngày hôm qua của Apple. 1620 01:21:18,300 --> 01:21:22,500 Đây cũng là lý do tại sao FBI không thể chỉ đi và nhìn vào điện thoại của nghi can 1621 01:21:22,500 --> 01:21:26,820 và tìm thấy những dòng mã, cho Ví dụ, cho phép mật mã 1622 01:21:26,820 --> 01:21:28,940 hoặc cho phép rằng sự chậm trễ 80 mili giây. 1623 01:21:28,940 --> 01:21:31,630 Bởi vì do thời gian nó trên iPhone của đồng nghiệp, 1624 01:21:31,630 --> 01:21:34,975 nó đã được chuyển đổi sang 0 và 1. 1625 01:21:34,975 --> 01:21:38,015 1626 01:21:38,015 --> 01:21:40,820 >> Vâng, chúng ta hãy tạm dừng ở đây cho chúng tôi nhìn vào tư duy tính toán. 1627 01:21:40,820 --> 01:21:42,320 Tại sao chúng ta không nghỉ khoảng 15 phút. 1628 01:21:42,320 --> 01:21:44,130 Và khi chúng tôi trở lại, chúng tôi sẽ hãy nhìn vào lập trình 1629 01:21:44,130 --> 01:21:46,550 bản thân và bắt đầu một số bản đồ những khái niệm cao cấp 1630 01:21:46,550 --> 01:21:49,780 đến một thực tế, nếu vui tươi, ngôn ngữ lập trình. 1631 01:21:49,780 --> 01:21:51,089