[Powered by Google Translate] [וואָך 5] [דוד י מאַלאַן, האַרוואַרד אוניווערסיטעט] [דאס איז קס50.] [CS50.TV] [אשה] ער ס ליגן; וועגן וואָס, איך טאָן ניט וויסן. [מענטש] אזוי וואָס טאָן מיר וויסן? [אשה] אַז בייַ 9:15, Ray סאַנטויאַ איז געווען בייַ די אַטם. [מענטש] אזוי די קשיא איז, וואָס איז ער טאן בייַ 9:16? [אשה] שיסערייַ די 9 מם בייַ עפּעס. אפֿשר האט ער געזען די סנייפּער. [מענטש] אָדער ער איז געווען ארבעטן מיט אים. [אשה] וואַרטן. גיי צוריק איין. [מענטש] וואָס טאָן איר זען? [♫ סוספּענסעפול מוזיק ♫] [אשה] ברענגען זייַן פּנים אַרויף. גאַנץ פאַרשטעלן. [מענטש] זיין ברילן. >> עס ס אַ אָפּשפּיגלונג. [♫ סוספּענסעפול מוזיק ♫] [מענטש] אַז ס די נועוויטאַ ס בייסבאָל קאָלעקטיוו. אַז ס 'זייער לאָגאָ. [אשה] און ער ס גערעדט צו ווער סע ס ווערינג אַז רעקל. [דוד מאַלאַן] אזוי, דאָס איז קס50 וואָך 5, און הייַנט מיר צעשטערן אַ ביסל פון טעלעוויזיע און פֿילם פֿאַר איר. אַזוי ווען איר ניטאָ וואַטשינג אַ ווייַזן ווי דאָס איינער דאָ, און די קאַפּס זאָגן "קען איר ריין וואָס אַרויף?" אָדער "ענהאַנסע," עס איז קיין פאַרבעסערן אין די פאַקטיש וועלט. אין פאַקט, וואָס איר טאַקע באַקומען איז אַ ביסל עפּעס ווי דעם. איך ווע פּולד אַרויף איינער פון די שטעקן פאָטאָס פון די בלאַט. דאס איז אַ פּראָגראַם גערופן פאָטאָשאָפּ. דאס איז 1 פון 2 באָוודענס, 1 פון 3 באָוודענס פאקטיש, הייַנט, ווייַל מיר האָבן פרוי באָוודען דאָ ווי געזונט, מיט ראָב און פאולוס. אבער דאָ איז ראָב אויף די פאַרשטעלן, און אויב מיר פארגרעסער אין אויף וואָס גלינט ער ס שטענדיק האט אין זייַן אויג, וואָס איר פאקטיש זען איז אַז וואָס איר זען איז וואָס איר באַקומען. דאס איז "ענכאַנסט," אַזוי "קסי" האָבן עס אַ ביסל פאַלש. עס ס איין אנדערע קלעמערל, אויב מיר קענען קלייַבן אויף "קסי" נאָר אַ קליין ביסל מער. דאס איינער איז אַ פייַן פראַזע צו גאָר איצט אן אויב איר ווילן צו געזונט טעכניש מיט דיין פריינט ווען, טאַקע, איר ניטאָ געזאגט לעגאַמרע גאָרנישט. [מענטש] פֿאַר וואָכן איך ווע שוין ינוועסטאַגייטינג די קאַבי קיללער רציחה מיט אַ זיכער מאָרבאַד פאַרכאַפּטקייַט. [אשה # 1] דאס איז אין פאַקטיש צייַט. [אשה # 2] איך וועט שאַפֿן אַ גוי צובינד ניצן וויסואַל באַסיק, זען אויב איך קענען שפּור אַן IP אַדרעס. [מאַלאַן] אזוי אַודיאָ אויס פון סינק באַזונדער, שאפן אַ גוי צובינד ניצן וויסואַל באַסיק צו שפּור אַן IP אַדרעס איז גאַנץ ומזין. די טעג איר וואָלט נישט נוצן וויסואַל באַסיק, דאָרט ס ניט דאַרפֿן פֿאַר אַ גוי, און IP אַדרעס איז געווען אַ טעקניקלי פּינטלעך טערמין. אַזוי האַלטן אַן אויג אויס פֿאַר די, און איינער פון מיין פאַוואָריטעס: דאס איין 'ס אַ ביסל מער אַרקיין, ווייַל איר דאַרפֿן צו וויסן אַ פאַרשידענע שפּראַך. עס ס אַ שפּראַך גערופן אַבדזשעקטיוו-C, וואָס איז אַ סופּערסעט פון סי וואָס מיטל עס ס C פּלוס עטלעכע נאָך פֿעיִקייטן, צווישן זיי כייפעץ-אָריענטיד פּראָגראַממינג. און דאָס איז די שפּראַך וואָס עפּל האט פּאַפּיאַלערייזד פֿאַר יאָס פּראָגראַממינג. און אַזוי דאָ ס אַ קלעמערל פון אַ אַנדערש ווייַזן בעסאַכאַקל, פון "נומערן," אַז אויב איר פאקטיש קוקן ענג אויף דיין טיוואָ און פּויזע בייַ די רעכט מאָמענט, איר וועט זען אַז וואָס זיי ניטאָ קוקן אין איז נישט גאַנץ וואָס איז זייַענדיק דיסקרייבד. און לאָזן מיר פּרובירן אַ אַנדערש אַודיאָ קאַנעקטער דאָ און זען אויב מיר קענען ניט האַלטן די אַודיאָ אין סינק דעם צייַט. איך געבן איר "נומערן." [מענטש # 1] עס ס אַ 32-ביסל יפּוו4 אַדרעס. [מענטש # 2] יפּ, אַז ס די אינטערנעט. >> פּריוואַט נעץ. עס ס אַניטאַ ס פּריוואַט נעץ. [מאַלאַן] אָוקיי. דאס איז אַבדזשעקטיוו-C, און עס ס פֿאַר עטלעכע קינד ס קאַלערינג פּראָגראַם, ווי איר קענען טאָמער אָפּלערנען פון די נאָמען פון די בייַטעוודיק דאָרט. אַזוי אַז, דעריבער, איז געווען "נומערן." אַזוי הייַנט און דעם וואָך מיר באַקענען אַ קליין ביסל פון די וועלט פון פערענסיקס און דער קאָנטעקסט אין די פראבלעמען דעריבער. הייַנט וועט זייַן אַ אַבריוויייטיד לעקציע ווייַל דאָרט ס אַ ספּעציעל געשעעניש אין דאָ דערנאך, אַזוי מיר וועט נעמען אַ פּיק, און רייצנ ביידע סטודענטן און עלטערן ענלעך הייַנט מיט עטלעכע פון ​​די זאכן וואָס זענען אויף דער האָריזאָנט. צווישן זיי, ווי פון מאנטאג, איר וועט האָבן אַ ביסל מער קלאַסמייץ. עדקס, האַרוואַרד און מיץ נייַ אָנליין איניציאטיוו פֿאַר עפענען קאָורסעוואַרע און מער, איז לאָנטשינג אויף האַרוואַרד ס קאַמפּאַס אויף מאנטאג. וואָס מיטל קומען מאנטאג איר וועט האָבן - ווי פון לעצטע ציילן, 86,000 נאָך קלאַסמייץ וועט זייַן פאלגענדע צוזאמען מיט קס50 ס רעפֿעראַטן און סעקשאַנז און וואַלקטהראָוגהס און פּראָבלעם שטעלט. און ווי טייל פון דעם, איר וועט ווערן מיטגלידער פון די ינאָגעראַל קלאַס פון קס50 און איצט קס50קס. ווי טייל פון דעם, איצט, פאַרשטיין אַז עס וועט זייַן עטלעכע ופּסידעס ווי געזונט. צו באַקומען גרייט פֿאַר דעם, פֿאַר די מאַסיוו נומער פון סטודענטן, סטייַען עס צו זאָגן אַז אַפֿילו כאָטש מיר האָבן 108 טפס און קאַס, ניט גאַנץ דער בעסטער תּלמיד / לערער פאַרהעלטעניש אַמאָל מיר שלאָגן 80,000 אנדערע סטודענטן. אַזוי מיר ניטאָ ניט געגאנגען צו זייַן גריידינג אַזוי פילע פּראָבלעם שטעלט מאַניואַלי. אַזוי באַקענענ דעם וואָך אין די פּראָבלעם שטעלן וועט זייַן קס50 קוק, וואָס איז געגאנגען צו זייַן אַ באַפֿעל שורה נוצן ין די אַפּפּליאַנסע אַז איר וועט באַקומען אַמאָל איר דערהייַנטיקן עס שפּעטער דעם אָפּרוטעג, און איר וועט זייַן ביכולת צו לויפן אַ באַפֿעל, טשעק 50, אויף דיין אייגן פּסעט, און איר וועט באַקומען עטלעכע באַמערקונגען ווי צו צי דיין פּראָגראַם איז ריכטיק אָדער פאַלש לויט צו פארשידענע פּלאַן ספּעסאַפאַקיישאַנז אַז מיר האָבן צוגעשטעלט. אַזוי מער אויף אַז און די פּראָבלעם שטעלן באַשרייַבונג און די קס50קס קלאַסמייץ וועט זייַן ניצן דאָס ווי געזונט. אַזוי פּראָבלעם שטעלן 4 איז אַלע וועגן פערענסיקס. און דעם שטיק איז געווען ינספּייערד דורך עטלעכע פאַקטיש-לעבן שטאָפּן, ווערביי ווען איך איז געווען אין גראַדזשאַוואַט שולע, איך ינטערנד פֿאַר אַ בשעת מיט די מידדלעסעקס קאָונטי ס דיסטריקט אַטערני ס אָפיס טאן פאָרענסיק אַרבעט מיט זייער פירן פאָרענסיק ינוועסטיגאַטאָר, און וואָס דאָס אַמאַונטיד צו איז, איך טראַכטן איך דערמאנט אַ ביסל וואָך ס פאַרגאַנגענהייַט, איז דער מאַס שטאַט פּאָליצייַ אָדער אנדערע וואָלט קומען אין, זיי וואָלט פאַלן אַוועק זאכן ווי שווער דרייווז און קאָמפּאַקטלעך און פלאַפּי דיסקס און די ווי, און דאַן די ציל פון די פערענסיקס אָפיס איז געווען צו יבערצייַגנ צי עס איז אָדער האט ניט זאָגן פון עטלעכע סאָרט. דאס איז געווען די ספּעציעלע ינוועסטיגאַטיאָנס יוניט, אַזוי עס איז געווען ווייַס-קאָלנער פאַרברעכן, עס איז געווען מער טראַבאַלינג סאָרט פון קריימז, עפּעס ינוואַלווינג עטלעכע מין פון דיגיטאַל מידיאַ; טורנס אויס אַז נישט אַז פילע מענטשן שרייַבן אַן Email געזאגט "איך האט עס". אַזוי גאַנץ אָפֿט די פערענסיקס אָנפֿרעגן האט נישט קער אַרויף אַלע אַז פיל פרוכט, אָבער מאל מען וואָלט שרייַבן אַזאַ ימיילז. אַזוי מאל די השתדלות זענען ריוואָרדיד. אבער צו פירן אַרויף צו דעם פאָרענסיק פּסעט, מיר וועט זייַן ינטראָודוסינג אין פּסעט 4 אַ ביסל פון גראַפיקס. אַזוי איר מיסטאָמע נעמען די זאכן פֿאַר געגעבן, דזשפּעגס, גיפס, און די ווי די טעג, אָבער אויב איר טאַקע טראַכטן וועגן אים, אַ בילד, פיל ווי ראָב ס פּנים, קען זייַן מאַדאַלד ווי אַ סיקוואַנס פון דאַץ, אָדער בילדצעלן. איצט, אין די פאַל פון ראָב ס פּנים, דאָרט ס אַלע סאָרץ פון פארבן, און מיר אנגעהויבן צו זען דעם יחיד דאַץ, אָטהערווידע באקאנט ווי בילדצעלן, אַמאָל מיר אנגעהויבן צו פארגרעסער ין אבער אויב מיר פאַרפּאָשעטערן די וועלט אַ ביסל, און נאָר זאָגן אַז דאָס דאָ איז ראָב אין שוואַרץ און ווייַס, געזונט, צו פאָרשטעלן שוואַרץ און ווייַס מיר קענען נאָר נוצן ביינערי. און אויב מיר רע געגאנגען צו נוצן ביינערי, 1 אָדער 0, מיר קענען אויסדריקן דעם זעלביקער בילד פון ראָב ס סמיילינג פּנים מיט דעם מוסטער פון ביטן: 11000011 רעפּראַזענץ ווייַס, ווייַס, שוואַרץ, שוואַרץ, שוואַרץ, שוואַרץ, ווייַס ווייַס. און אַזוי עס ס נישט אַ ריזיק שפּרינגען, דעריבער, צו אָנהייבן גערעדט וועגן פאַרביק פאָוטאַגראַפס. זאכן וואָס איר וואָלט זען אויף פאַסעבאָאָק אָדער נעמען מיט אַ דיגיטאַל אַפּאַראַט, אָבער, זיכער, ווען עס קומט צו פארבן, איר דאַרפֿן מער ביטן. און גאַנץ פּראָסט אין דער וועלט פון פאָוטאַגראַפס איז צו נוצן ניט 1-ביסל קאָליר, ווי דעם סאַגדזשעס, אָבער 24-ביסל קאָליר, ווו איר פאקטיש באַקומען מיליאַנז פון פארבן. אַזוי ווי אין דעם פאַל ווען מיר זומד אין אויף ראָב ס אויג, וואָס איז קיין נומער פון מיליאַנז פון פאַרשידענע פאַרביק פּאַסאַבילאַטיז. אַזוי מיר וועט באַקענען דעם אין פּראָבלעם שטעלן 4 ווי גוט ווי אין די וואַלקטהראָוגה, וואָס וועט זייַן הייַנט בייַ 3:30 אַנשטאָט פון די געוויינטלעך 2:30 ווייַל פון פרייטאג 'ס לעקציע דאָ. אבער די ווידעא וועט זייַן אָנליין, ווי געוויינטלעך, מאָרגן. מיר וועט אויך באַקענען איר צו אן אנדער טעקע פֿאָרמאַט. אַזוי דאָס איז דיליבראַטלי מענט צו קוקן ינטימידייטינג בייַ ערשטער, אָבער דאָס איז נאָר עטלעכע דאַקיומענטיישאַן פֿאַר אַ C סטרוקט. עס טורנס אויס אַז מייקראָסאָפֿט, יאָרן צוריק, געהאָלפֿן פּאַפּיאַלערייז דעם פֿאָרמאַט, גערופן די ביטמאַפּ טעקע פֿאָרמאַט, במפּ, און דאָס איז געווען אַ סופּער-פּשוט, פאַרביק גראַפיקאַל טעקע פֿאָרמאַט וואָס איז געניצט פֿאַר גאַנץ עטלעכע מאָל און מאל נאָך פֿאַר וואָלפּייפּערז אויף דעסקטאַפּס. אויב איר טראַכטן צוריק צו Windows XP און די ראָולינג היללס און בלוי הימל, וואָס איז געווען טיפּיקלי אַ במפּ, אָדער ביטמאַפּ בילד, און ביטמאַפּס זענען שפּאַס פֿאַר אונדז ווייַל זיי האָבן אַ ביסל מער קאַמפּלעקסיטי. עס ס נישט גאַנץ ווי פּשוט ווי דעם גריד פון 0 ס און 1 ס; אַנשטאָט, איר האָבן דאס ווי אַ כעדער אין די אָנהייב פון אַ טעקע. אַזוי אין אנדערע ווערטער, ין אַ. במפּ טעקע איז אַ גאַנץ בינטל פון 0 ס און 1 ס, אָבער דאָרט ס עטלעכע נאָך 0 ס און 1 ס אין דאָרט. און עס טורנס אויס אַז וואָס מיר ווע מיסטאָמע גענומען פֿאַר געגעבן פֿאַר יאָרן, טעקע פֿאָרמאַטירונגען ווי. שולדבאַנק אָדער. קסלס אָדער. mp3 אָדער. מפּ 4, וועלכער דער טעקע פֿאָרמאַטירונגען אַז איר ניטאָ באַקאַנט מיט. נו, וואָס טוט עס אַפֿילו מיינען צו זייַן אַ טעקע פֿאָרמאַט? ווייַל אין די סוף פון די טאָג, אַלע פון ​​די טעקעס מיר נוצן האָבן נאָר 0 ס און 1 ס און אפֿשר יענע 0 ס און 1 ס פאָרשטעלן אַ, ב, C, דורך אַסקי אָדער די ווי, אָבער דורך דעם סוף פון דעם טאָג, עס ס נאָר 0 ס און 1 ס. אַזוי יומאַנז נאָר טייל מאָל באַשליסן צו אויסטראַכטן אַ נייַ טעקע פֿאָרמאַט ווו זיי סטאַנדערדייז וואָס פּאַטערנז פון ביטן וועט פאקטיש מיינען. און אין דעם פאַל דאָ, די פאָלקס וואס דיזיינד די ביטמאַפּ טעקע פֿאָרמאַט האט געזאגט אַז בייַ די זייער ערשטער ביטע אין אַ ביטמאַפּ טעקע, ווי דינאָוטאַד דורך פאָטאָ 0, דאָרט, דאָרט ס געגאנגען צו זייַן עטלעכע קריפּטיקאַללי געהייסן בייַטעוודיק גערופן בפטיפּע, וואָס נאָר שטייט פֿאַר ביטמאַפּ טעקע טיפּ; וואָס טיפּ פון ביטמאַפּ טעקע דאָס איז. איר קענען אָפּלערנען, טאָמער, פון די רגע רודערן אַז פאָטאָ 2, ביטע נומער 2, האט אַ מוסטער פון 0 ס און 1 ס אַז רעפּראַזענץ וואָס? די גרייס פון עפּעס, און עס גייט אויף פון דאָרט. אַזוי אין פּראָבלעם שטעלן 4, איר וועט זייַן געגאנגען דורך עטלעכע פון ​​די זאכן. מיר וועלן נישט סוף אַרויף קאַרינג וועגן אַלע פון ​​זיי, אָבער באַמערקן עס סטאַרץ צו באַקומען טשיקאַווע אַרום שורה אָדער ביטע 54, רגבטבלוע, גרין און רעד. אויב איר ווע אלץ געהערט די אַקראַנים רגב, רויט גרין בלוי, דאָס איז אַ דערמאָנען צו וואָס. ווייַל עס טורנס אויס איר קענען פּיינט אַלע די פארבן פון די רעגנבויגן מיט עטלעכע קאָמבינאַציע פון ​​רויט און בלוי און גרין. און, אין פאַקט, די עלטערן אין דער צימער זאל צוריקרופן עטלעכע פון ​​די ערליאַסט פּראָדזשעקטאָרס. די טעג, איר נאָר זען 1 העל ליכט קומען אויס פון אַ אָביעקטיוו. אבער צוריק אין דעם טאָג, איר האט די רויט אָביעקטיוו, די בלוי אָביעקטיוו, און די גרין אָביעקטיוו און צוזאַמען זיי אַימעד בייַ די פאַרשטעלן און געשאפן אַ פאַרביק בילד. און גאַנץ אָפֿט מיטן שולן און הויך שולן וואָלט האָבן יענע לענסעס אלץ-אַזוי-ביסל אַסקיו, אַזוי איר זענען סאָרט פון געזען טאָפּל אָדער דרייַיק בילדער, אָבער וואָס איז געווען דער געדאַנק. איר האט רויט און גרין און בלוי ליכט געמעל אַ בילד. און אַז זעלביקער פּרינציפּ איז געניצט אין קאָמפּיוטערס. אַזוי צווישן די טשאַלאַנדזשיז, דעמאָלט, פֿאַר איר אין פּראָבלעם שטעלן 4 זענען געגאנגען צו זייַן אַ ביסל זאכן; איינער איז צו פאקטיש רעסיזע אַ בילד. צו נעמען אין אַ מוסטער פון 0 ס און 1 ס, פיגור אויס וואָס טשאַנגקס פון 0 ס און 1 ס פאָרשטעלן וואָס אין אַ סטרוקטור ווי דעם, און דעמאָלט רעכענען אויס ווי צו רעפּלאַקייט די בילדצעלן: די רעדס, די בלוז, די גרינז ין אַזוי אַז ווען אַ בילד קוקט ווי דעם טכילעס, זאל קוקן ווי דעם אַנשטאָט נאָך וואָס. צווישן די אנדערע טשאַלאַנדזשיז, אויך, איז געגאנגען צו זייַן אַז איר וועט זייַן קאָלנער אַ פאָרענסיק בילד פון אַ פאַקטיש טעקע פון ​​אַ דיגיטאַל אַפּאַראַט און אויף וואָס אַפּאַראַט, אַמאָל אויף אַ מאָל, געווען אַ גאַנץ בינטל פון פאָטאָס. די פּראָבלעם איז, מיר אַקסאַדענאַלי ירייסט אָדער האט די בילד פארדארבן עפעס. שלעכט זאכן פּאַסירן מיט דיגיטאַל קאַמעראַס, און אַזוי מיר געשווינד קאַפּיד אַלע פון ​​דעם 0 ס און 1 ס אַוועק פון וואָס קאָרט פֿאַר איר, געהאלפן זיי אַלע אין 1 גרויס טעקע, און דאַן מיר וועט האַנט זיי צו איר אין פּראָבלעם שטעלן 4 אַזוי אַז איר קענען שרייַבן אַ פּראָגראַם אין C מיט וואָס צו צוריקקריגן אַלע פון ​​יענע דזשפּעגס, יידילי. און עס טורנס אויס אַז דזשפּעגס, אַפֿילו כאָטש זיי ניטאָ עפּעס פון אַ קאָמפּלעקס טעקע פֿאָרמאַט, זיי ניטאָ פיל מער קאָמפּליצירט ווי דעם סמיילינג פּנים דאָ. עס טורנס אויס אַז יעדער געפֿינען סטאַרץ מיט דער זעלביקער פּאַטערנז פון 0 ס און 1 ס. אַזוי ניצן אַ בשעת שלייף אָדער אַ פֿאַר שלייף אָדער ענלעך, איר קענען יטעראַטע איבער אַלע דעם 0 ס און 1 ס אין דעם פאָרענסיק בילד און יעדער צייַט איר זען די ספּעציעל מוסטער אַז ס דיפיינד אין די פּראָבלעם שטעלן ס באַשרייַבונג, איר קענען יבערנעמען, 'אָה, דאָ איז, מיט זייער הויך מאַשמאָעס, דער אָנהייב פון אַ געפֿינען, 'און ווי באַלד ווי איר געפֿינען די זעלבע מוסטער, עטלעכע נומער פון ביטעס אָדער קילאבייט אָדער מעגאבייט שפּעטער, איר קענען יבערנעמען, 'ו! דאָ איז אַ רגע געפֿינען, די פאָטאָ איך גענומען נאָך דער ערשטער איינער. זאל מיר האַלטן לייענען אַז ערשטער טעקע, אָנהייבן שרייבן דעם נייַ איינער. ' און דער רעזולטאַט פון דיין פּראָגראַם פֿאַר פּסעט 4 איז געגאנגען צו זייַן ווי פילע ווי 50 דזשפּעגס. און אויב עס ס נישט 50 דזשפּעגס, איר האָט אַ ביסל פון אַ שלייף. אויב איר האָבן אַ ינפאַנאַט נומער פון דזשפּעגס, איר האָט אַ ינפאַנאַט שלייף. אַזוי אַז, אויך, וועט זייַן גאַנץ אַ פּראָסט פאַל. אַז ס 'וואָס ס אויף דעם האָריזאָנט. קוויז 0, הינטער אונדז. פאַרשטיין, פּער מיין בליצפּאָסט, אַז טאָמיד דאָרט ס פאָלקס וואס זענען ביידע צופרידן, סאָרט פון נייטראַל, און טרויעריק אַרום ויספרעג 0 צייַט. און ביטע טאָן דערגרייכן אויס צו מיר, די קאָפּ טפס, זאַמילאַ, דיין אייגן טף אָדער איינער פון די קאַס אַז איר וויסן אויב איר וואָלט ווי צו דיסקוטירן ווי דאס געגאנגען. אַזוי צו ימפּאָנירן די עלטערן דאָ אין דעם צימער, וואָס איז די קס50 ביבליאָטעק? גוט אַרבעט. וואָס ס די קס50 ביבליאָטעק? יאָ? [תּלמיד ענטפֿערס, אַנינטעלאַדזשאַבאַל] >> אָוקיי, גוט. אַזוי עס ס אַ פּרעווריטטען שטעלן פון קאָד וואָס מיר, די שטעקן, געשריבן, מיר צושטעלן צו איר, צו צושטעלן עטלעכע פּראָסט פונקטיאָנאַליטיעס. שטאָפּן ווי באַקומען מיר אַ שטריקל; באַקומען מיר אַ ינט, אַלע פון ​​די פאַנגקשאַנז וואָס זענען ליסטעד דאָ. סטאַרטינג איצט, מיר אָנהייבן צו טאַקע נעמען די טריינינג ווהעעלס אַוועק. אַזוי מיר רע געגאנגען צו אָנהייבן צו נעמען אַוועק אַ "שטריקל" פון איר, וואָס, צוריקרופן, איז געווען נאָר אַ סינאָנים פֿאַר וואָס פאַקטיש דאַטן טיפּ? טשאַר *. אַזוי פֿאַר עלטערן, וואָס איז געווען מיסטאָמע - אַז ס 'גוט, אַזוי טשאַר * מיר וועט אָנהייבן צו זען אויף די פאַרשטעלן אַלע די מער ווי מיר באַזייַטיקן "שטריקל" פון אונדזער וואָקאַבולאַרי, בייַ מינדסטער ווען עס קומט צו פאקטיש שרייבן קאָד. סימילאַרלי, מיר וועט האַלטן ניצן עטלעכע פון ​​די פאַנגקשאַנז ווי פיל, ווייַל אונדזער מגילה זענען געגאנגען צו באַקומען מער סאַפיסטאַקייטיד אלא ווי נאָר שרייַבן מגילה וואָס זיצן דאָרט מיט אַ פּינטלעך בלינקינג, ווארטן פֿאַר די באַניצער צו טיפּ עפּעס ין איר וועט באַקומען דיין ינפּוץ פון אנדערש. פֿאַר בייַשפּיל, איר וועט באַקומען זיי פון אַ סעריע פון ​​ביטן אויף די היגע שווער פאָר. איר וועט אַנשטאָט באַקומען זיי אין די צוקונפֿט פון אַ נעץ קשר, עטלעכע וועבזייַטל ערגעץ. אַזוי לאָזן ס שאָלעכץ צוריק דעם שיכטע פֿאַר דער ערשטער צייַט, און ציען אַרויף די קס50 אַפּפּליאַנסע און דעם טעקע גערופן קס50.ה, וואָס איר ווע געווען שאַרף כולל פֿאַר וואָכן. אבער לאָזן ס פאקטיש זען וואָס ס 'ין פון דעם. אַזוי דער שפּיץ פון דער טעקע אין בלוי איז נאָר אַ גאַנץ בינטל פון באַמערקונגען, וואָראַנטי אינפֿאָרמאַציע און ליסענסינג. דאס איז סאָרט פון אַ פּראָסט פּעראַדיים אין סאָפטווער, ווייַל אַ פּלאַץ פון ווייכווארג די טעג איז וואָס ס גערופן "עפענען מקור," וואָס מיטל אַז עמעצער האט געשריבן די קאָד און געמאכט עס פרילי פאַראַנען, ניט נאָר צו לויפן און צו נוצן, אָבער פאקטיש לייענען און יבערבייַטן און ויסשטימען אין דיין אייגן אַרבעט. אַזוי אַז ס וואָס איר ווע שוין ניצן, עפענען מקור סאָפטווער, אָלבייט אין אַ זייער קליין פאָרעם. אויב איך מעגילע אַראָפּ פאַרגאַנגענהייַט די באַמערקונגען, כאָטש, מיר וועט אָנהייבן צו זען עטלעכע מער באַקאַנט זאכן. אַזוי באַמערקן בייַ די שפּיץ דאָ, אַז די קס50.ה טעקע כולל אַ גאַנץ בינטל פון כעדער טעקעס. איצט, רובֿ פון די מיר האָבן נישט געזען פאר, אָבער איינער איז באַקאַנט; וואָס פון די האָבן מיר געזען, אָלבייט בעקיצער, אַזוי ווייַט? יאָ, נאָרמאַל לייברעריז. סטדליב.ה האט מאַללאָק, אַזוי אַמאָל מיר אנגעהויבן גערעדט וועגן דינאַמיש זכּרון אַלאַקיישאַן, וואָס מיר וועט קומען צוריק צו ווייַטער וואָך ווי געזונט, מיר אנגעהויבן אַרייַנגערעכנט אַז טעקע. עס טורנס אויס אַז באָאָל און אמת און פאַלש טאָן נישט פאקטיש עקסיסטירן אין C, פּער סיי, סייַדן איר אַרייַננעמען דעם טעקע דאָ. אַזוי מיר האָבן, פֿאַר וואָכן, שוין אַרייַנגערעכנט נאָרמאַל באָאָל.ה אַזוי אַז איר קענען נוצן דעם געדאנק פון אַ באָאָל, אמת אָדער פאַלש. אָן דעם, איר וואָלט האָבן צו סאָרט פון שווינדל עס און נוצן אַ ינט און נאָר אַרביטרעראַלי יבערנעמען וואָס 0 איז פאַלש און 1 איז אמת. איצט, אויב מיר מעגילע אַראָפּ ווייַטער, דאָ איז אונדזער דעפֿיניציע פון ​​אַ שטריקל. עס טורנס אויס, ווי מיר ווע געזאגט פריער, אַז ווו דעם * איז טוט ניט טאַקע ענין. איר קענען אַפֿילו האָבן פּלאַץ אַלע אַרום. מיר, דעם זמאַן, האָבן שוין פּראַמאָוטינג עס ווי דעם צו מאַכן קלאָר אַז די * האט צו טאָן מיט דעם טיפּ. אבער פאַרשטיין, פּונקט ווי פּראָסט, אויב נישט אַ ביסל מער פּראָסט, איז צו לייגן עס דאָרט אָבער פאַנגקשאַנאַלי עס ס די זעלבע זאַך. אבער איצט, אויב מיר לייענען אַראָפּ ווייַטער, לאָזן ס נעמען אַ קוק בייַ זאָגן, געטינט, ווייַל מיר געוויינט אַז, טאָמער, איידער עפּעס אַנדערש דעם זמאַן. און דאָ איז געטינט. דאס איז וואָס? דאס איז די פּראָוטאַטייפּ. אַזוי אָפֿט, מיר האָבן שטעלן פּראָוטאַטייפּס בייַ די טאַפּס פון אונדזער. C טעקעס, אָבער איר קענען אויך שטעלן פּראָוטאַטייפּס אין כעדער טעקעס,. ה טעקעס, ווי דאָס איינער דאָ, אַזוי אַז ווען איר שרייַבן עטלעכע פאַנגקשאַנז אַז איר ווילן אנדערע מענטשן צו זייַן ביכולת צו נוצן, וואָס איז פּונקט דער פאַל מיט די קס50 ביבליאָטעק, איר ניט בלויז מאַכשער דיין פאַנגקשאַנז אין עפּעס ווי קס50.ק, איר אויך שטעלן די פּראָוטאַטייפּס נישט בייַ די שפּיץ פון וואָס טעקע, אָבער בייַ די שפּיץ פון אַ כעדער טעקע, דעמאָלט וואָס כעדער טעקע איז וואָס פריינט און חברים אַרייַננעמען, מיט שאַרף אַרייַננעמען אין זייער אייגן קאָד. אַזוי אַלע דעם צייַט איר ווע שוין אַרייַנגערעכנט אַלע פון ​​די פּראָוטאַטייפּס יפעקטיוולי בייַ די שפּיץ פון דיין טעקע, אָבער דורך וועג פון דעם שאַרף אַרייַננעמען מעקאַניזאַם אַז יסענשאַלי קאפיעס און פּאַסטעס דעם טעקע אין דיין אייגן. איצט, דאָ איז עטלעכע פערלי דיטיילד דאַקיומענטיישאַן. מיר ווע שיין פיל גענומען פֿאַר געגעבן אַז געטינט געץ אַ ינט, אָבער עס טורנס אויס דאָרט ס עטלעכע ווינקל פאלן, רעכט? וואָס אויב דער באַניצער טייפּס אין אַ נומער וואָס ס וועג אויך גרויס? א קווינטילליאָן, אַז נאָר קענען ניט פּאַסיק ין פון אַ ינט? וואָס איז די דערוואַרט אָפּפירונג? נו, יידילי, עס ס פּרידיקטאַבאַל. אַזוי אין דעם פאַל, אויב איר פאקטיש לייענען די פייַן דרוק, איר וועט זען אַז אויב די שורה קענען ניט זייַן לייענען, דעם קערט ינט_מאַקס. מיר ווע קיינמאָל גערעדט וועגן דעם, אָבער באזירט אויף זייַן קאַפּיטאַליזיישאַן, וואָס איז עס, מיסטאָמע? עס ס אַ קעסיידערדיק, אַזוי עס ס עטלעכע ספּעציעל קעסיידערדיק אַז ס מיסטאָמע דערקלערט אין איינער פון יענע כעדער טעקעס אַז ס אַרויף העכער אין די טעקע, און ינט_מאַקס איז מיסטאָמע עפּעס ווי, בעערעך, 2000000000. דער געדאַנק זייַענדיק אַז ווייַל מיר דאַרפֿן צו עפעס באַטייַטן אַז עפּעס געגאנגען אומרעכט, מיר, יאָ, האָבן 4000000000 נומערן אין אונדזער באַזייַטיקונג, נעגאַטיוו 2000000000 אויף אַרויף צו 2000000000, געבן אָדער נעמען. נו, וואָס איז פּראָסט אין פּראָגראַממינג איז איר גאַנווענען נאָר איינער פון יענע נומערן. אפֿשר 0, אפֿשר 2000000000, אפֿשר נעגאַטיוו 2000000000. אַזוי איר פאַרברענגען איינער פון דיין מעגלעך וואַלועס אַזוי אַז איר קענען טוען צו די וועלט אַז אויב עפּעס גייט אומרעכט, איך וועל צוריקקומען דעם סופּער-גרויס ווערט. אבער איר טאָן ניט וועלן די באַניצער טייפּינג עפּעס קריפּטיק ווי "2, 3, 4 ..." פון טאַקע גרויס נומער, ווו איר דזשענעראַלייז אַנשטאָט ווי אַ קעסיידערדיק. אַזוי טאַקע, אויב איר זענען זייַענדיק אַנאַל די פאַרגאַנגענהייַט ביסל וואָכן, עניטיים איר רופן געטינט, איר זאָל האָבן געווען קאָנטראָלירונג מיט אַן אויב צושטאַנד. האט דער באַניצער טיפּ אין ינט_מאַקס, אָדער מער ספּאַסיפיקלי, האט געטינט צוריקקומען ינט_מאַקס? ווייַל אויב עס האט, אַז פאקטיש מיטל זיי האט ניט טיפּ עס; עפּעס געגאנגען אומרעכט אין דעם פאַל. אַזוי דאָס איז וואָס ס 'בכלל באקאנט ווי אַ "סענטינעל" ווערט, וואָס נאָר מיטל ספּעציעל. נו, לאָזן ס איצט דרייַ אין צו דעם. C טעקעס. די C טעקע האט געווען אין די אַפּפּליאַנסע פֿאַר עטלעכע מאָל, און, אין פאַקט, די אַפּפּליאַנסע האט עס פּרעקאָמפּילעד פֿאַר איר אין וואָס זאַך מיר גערופן "כייפעץ קאָד," אָבער עס נאָר טוט נישט ענין צו איר ווו עס איז ווייַל די סיסטעם ווייסט, אין דעם פאַל, ווו עס איז, די אַפּפּליאַנסע. אבער לאָזן ס מעגילע אַראָפּ איצט צו געטינט, און זען ווי געטינט האט שוין ארבעטן אַלע דעם צייַט. אַזוי דאָ מיר האָבן ענלעך באַמערקונגען פון פריער. זאל מיר פארגרעסער אין אויף נאָר די קאָד חלק, און וואָס מיר האָבן פֿאַר געטינט איז די פאלגענדע. עס נעמט קיין אַרייַנשרייַב און עס קערט אַ ינט, בשעת (אמת), אַזוי מיר האָבן אַ דיליבראַט ינפאַנאַט שלייף אָבער, מאַשמאָעס, מיר וועט ברעכן אויס פון דעם עפעס, אָדער צוריקקומען פון ין דעם. אַזוי לאָזן ס זען ווי דאָס אַרבעט. נו, מיר ויסקומען צו זייַן ניצן געצטרינג אין דעם ערשטער שורה ין די שלייף, 166. דאס איז איצט גוט פיר ווייַל אונטער וואָס צושטאנדן קען געצטרינג צוריקקומען דעם ספּעציעל קיווערד, נאַל? אויב עפּעס גייט פאַלש. וואָס קען גיין אומרעכט ווען איר רופן עפּעס ווי געצטרינג? יאָ? [תּלמיד ענטפֿערן, אַנינטעלאַדזשאַבאַל] >> יאָ. אַזוי אפֿשר מאַללאָק פיילז. ערגעץ ונטער דער קאַפּטער געצטרינג איז פאַך מאַללאָק, וואָס אַלאַקייץ זכּרון, וואָס לעץ די קאָמפּיוטער קראָם אַלע פון ​​די אותיות אַז דער באַניצער טייפּס אין די קלאַוויאַטור. און רעכן דער באַניצער האט אַ גאנצע פּלאַץ פון פֿרייַ צייַט און טייפּט מער, פֿאַר בייַשפּיל, ווי 2000000000 אותיות. מער אותיות ווי דעם קאָמפּיוטער אַפֿילו האט באַראַן. נו, געצטרינג האט צו זייַן ביכולת צו באַטייַטן אַז צו איר, אַפֿילו אויב דאָס איז אַ סופּער, סופּער ומגעוויינטלעך ווינקל פאַל. עס האט צו עפעס זייַן ביכולת צו שעפּן דעם, און אַזוי געצטרינג, אויב מיר גיין צוריק און לייענען זייַן דאַקיומענטיישאַן, טוט, אין פאַקט, צוריקקומען נאַל. איצט אויב געצטרינג פיילז דורך אומגעקערט נאַל, געטינט איז געגאנגען צו פאַרלאָזן דורך אומגעקערט ינט_מאַקס, פּונקט ווי אַ סענטינעל. די ביסט נאָר מענטש קאַנווענשאַנז. דער בלויז וועג איר וואָלט וויסן דעם איז דער פאַל איז דורך לייענען די דאַקיומענטיישאַן. אַזוי לאָזן ס מעגילע אַראָפּ צו ווו דער ינט איז פאקטיש גאָטינט. אַזוי אויב איך מעגילע אַראָפּ אַ ביסל ווייַטער, אין שורה 170 מיר האָבן אַ באַמערקונג אויבן די שורות. אַזוי מיר דערקלערן, אין 172, אַ ינט ען און אַ טשאַר C, און דאַן דעם נייַ פֿונקציע וואָס עטלעכע פון ​​איר האָבן שטאָקד פריער, אָבער ססקאַנף. דאס שטייט פֿאַר שטריקל יבערקוקן F. אין אנדערע ווערטער, געבן מיר אַ שטריקל און איך וועל יבערקוקן עס פֿאַר ברעקלעך פון אינפֿאָרמאַציע פון ​​אינטערעס. אַזוי וואָס טוט וואָס מיינען? נו, רעכן אַז איך טיפּ אין, ממש, 1 2 3 בייַ די קלאַוויאַטור, און דעמאָלט שלאָגן אַרייַן. וואָס איז די דאַטן טיפּ פון 1 2 3 ווען אומגעקערט דורך געצטרינג? עס ס דאָך אַ שטריקל, רעכט? איך גאַט אַ שטריקל, אַזוי 1 2 3 איז טאַקע "1 2 3" מיט די \ 0 בייַ די סוף פון עס. וואָס איז ניט אַ ינט. אַז ס 'נישט אַ נומער. עס קוקט ווי אַ נומער אָבער עס ס נישט פאקטיש. אַזוי וואָס טוט געטינט האָבן צו טאָן? עס האט צו יבערקוקן אַז שטריקל לינקס צו רעכט, 1 2 3 \ 0, און עפעס בייַטן עס צו אַ פאַקטיש ינטעגער. איצט, איר קען רעכענען אויס ווי צו טאָן דעם. אויב איר טראַכטן צוריק צו פּסעט 2, איר מאַשמאָעס גאַט אַ ביסל באַקוועם מיט קיסר אָדער וויגענערע אַזוי איר קענען יטעראַטע איבער אַ שטריקל, איר קענען בייַטן טשאַרס צו ינץ מיט קלייַבן. אַז ס אַ גאנצע פּלאַץ פון אַרבעט. פארוואס נישט רופן אַ פונקציאָנירן ווי ססקאַנף וואָס טוט אַז פֿאַר איר? אַזוי ססקאַנף יקספּעקץ אַן אַרגומענט, אין דעם פאַל גערופן שורה, וואָס איז אַ שטריקל. איר דעמאָלט ספּעציפיצירן, אין קוואָטעס, זייער ענלעך צו פּרינטף, וואָס טאָן איר דערוואַרטן צו זען אין דעם שטריקל? וואָס איך בין געזאגט דאָ איז, איך דערוואַרטן צו זען אַ דעצימאַל נומער און אפֿשר אַ כאַראַקטער. און מיר וועט זען וואָס דאָס איז דער פאַל אין נאָר אַ מאָמענט. עס טורנס אויס אַז דעם נאָוטיישאַן איז איצט רעמאַניסאַנט פון שטאָפּן מיר אנגעהויבן גערעדט וועגן נאָר איבער אַ וואָך צוריק. וואָס איז & ען און & C טאן פֿאַר אונדז דאָ? [תּלמיד ענטפֿערס, אַנינטעלאַדזשאַבאַל] >> יאָ. עס ס געבן מיר דעם אַדרעס פון ען און אַדרעס פון C. איצט, וואָס איז, אז וויכטיק? נו, איר וויסן אַז מיט פאַנגקשאַנז אין C איר קענען שטענדיק צוריקקומען אַ ווערט אָדער ניט ווערט בייַ אַלע. איר קענען צוריקקומען אַן ינט, אַ שטריקל, אַ לאָזנ שווימען, אַ טשאַר, וועלכער. אָדער איר קענען צוריקקומען פּאָסל, אָבער איר קענען נאָר צוריקקומען 1 זאַך מאַקסימאַללי. אבער דאָ מיר ווילן ססקאַנף צו צוריקקומען מיר אפֿשר אַ ינט, אַ דעצימאַל נומער, און אויך אַ טשאַר, און איך וועט דערקלערן וואָס די טשאַר אין אַ מאָמענט. אַזוי איר יפעקטיוולי ווילן F צו צוריקקומען 2 זאכן; אַז ס נאָר ניט מעגלעך אין סי אַזוי איר קענען אַרבעטן אַרום אַז דורך גייט פארביי אין 2 ווענדט, ווייַל ווי באַלד ווי איר האַנט אַ פֿונקציע 2 ווענדט, וואָס קענען וואָס פונקציאָנירן טאָן מיט זיי? עס קענען שרייַבן צו יענע ווענדט. איר קענען נוצן דעם * אָפּעראַציע און "גיין דאָרט" צו יעדער פון יענע ווענדט. עס ס סאָרט פון דעם באַקדאָר מעקאַניזאַם, אָבער זייער פּראָסט פֿאַר טשאַנגינג די וואַלועס פון וועריאַבאַלז אין מער ווי נאָר 1 אָרט, אין דעם פאַל 2. איצט, באַמערקן איך בין קאָנטראָלירונג פֿאַר == טאָ1, און דעמאָלט אומגעקערט N אויב וואָס טוט, אין פאַקט, אָפּשאַצן צו אמת. אַזוי וואָס ס געגאנגען אויף? נו, טעקניקלי, אַלע מיר טאַקע ווילן צו פּאַסירן אין געטינט איז דאָס. מיר ווילן צו פּאַרס, אַזוי צו רעדן; מיר ווילן צו לייענען די שטריקל "1 2 3" און אויב עס קוקט ווי דאָרט ס אַ נומער דאָרט, וואָס מיר רע טעלינג ססקאַנף צו טאָן איז שטעלן אַז נומער, 1 2 3, אין דעם בייַטעוודיק N פֿאַר מיר. פארוואס, דעמאָלט, האט איך האָבן דעם ווי גוט? וואָס איז די ראָלע פון ​​אויך געזאגט, ססקאַנף, איר זאל אויך באַקומען אַ כאַראַקטער דאָ. [תּלמיד גערעדט, אַנינטעלאַדזשאַבאַל] >> ניט - אַ דעצימאַל פונט קען אַרבעט. זאל ס האַלטן אַז געדאַנק פֿאַר אַ מאָמענט. וואָס אַנדערש? [תּלמיד, אַנינטעלאַדזשאַבאַל] >> אזוי, גוט געדאַנק, עס קען זייַן די נאַל כאַראַקטער. עס ס פאקטיש נישט, אין דעם פאַל. יאָ? [תּלמיד, אַנינטעלאַדזשאַבאַל] >> אַסקי. אָדער, לאָזן מיר דזשענעראַלייז אַפֿילו ווייַטער. דער% C עס איז נאָר פֿאַר טעות-קאָנטראָלירונג. מיר טאָן ניט וועלן דאָרט צו זייַן כאַראַקטער נאָך די נומער, אָבער וואָס דאָס אַלאַוז מיר צו טאָן איז די פאלגענדע: עס טורנס אויס אַז ססקאַנף, חוץ סטאָרינג וואַלועס אין ען און C, אין דעם בייַשפּיל דאָ, וואָס עס אויך טוט איז עס קערט די נומער פון וועריאַבאַלז עס שטעלן וואַלועס ין אַזוי אויב איר בלויז טיפּ אין 1 2 3, דעמאָלט נאָר דער% ד איז געגאנגען צו גלייַכן און בלויז N געץ סטאָרד מיט אַ ווערט ווי 1 2 3 און גאָרנישט געץ שטעלן אין C; C בלייבט אַ מיסט ווערט, אַזוי צו רעדן. מיסט ווייַל עס ס קיינמאָל געווען ינישאַלייזד ווי עטלעכע ווערט. אַזוי אין אַז פאַל, ססקאַנף קערט 1, ווייַל איך פּאַפּיאַלייטאַד איינער פון יענע פּוינטערז, אין וואָס פאַל, גרויס. איך האב אַן ינט, אַזוי איך פֿרייַ די שורה צו פֿרייַ אַרויף די זכּרון אַז געצטרינג פאקטיש אַלאַקייטיד, און דעמאָלט איך צוריקקומען ען. אַנדערש, אויב איר אלץ געחידושט ווו אַז ריטריי סטאַטעמענט קומט פון, קומט פון רעכט דאָ. אויב, דורך קאַנטראַסט, איך טיפּ אין 1 2 3 פו, נאָר עטלעכע טראַפ סיקוואַנס פון טעקסט, ססקאַנף איז געגאנגען צו זען, ו, נומער, ו, נומער, ו, נומער, ו - F. און עס ס געגאנגען צו שטעלן די 1 2 3 אין ען. עס ס געגאנגען צו שטעלן די F אין C, און דעמאָלט צוריקקומען 2. אַזוי מיר האָבן, נאָר ניצן די גרונט דעפֿיניציע פון ​​סקאַנף ס אָפּפירונג, אַ זייער פּשוט וועג - געזונט, קאָמפּלעקס אין ערשטער בליק, אָבער אין די סוף פון די טאָג, פערלי פּשוט מעקאַניזאַם פון געזאגט, איז עס אַ ינט, און אויב אַזוי, איז אַז דער בלויז זאַך וואָס איך געפונען? און די ווייַס פּלאַץ דאָ איז דיליבראַט. אויב איר לייענען דעם דאַקיומענטיישאַן פֿאַר ססקאַנף, עס דערציילט איר אַז אויב איר אַרייַננעמען אַ שטיק פון ווייַס פּלאַץ אין די אָנהייב אָדער די סוף, ססקאַנף אויך וועט לאָזן דעם באַניצער, פֿאַר וועלכער סיבה, צו שלאָגן ספּאַסעבאַר 1 2 3, און אַז וועט זייַן לאַדזשיטאַמאַט. עס וועט נישט שרייַען בייַ דער באַניצער נאָר ווייַל זיי שלאָגן די ספּאַסעבאַר אין די אָנהייב אָדער די סוף, וואָס איז נאָר אַ ביסל מער באַניצער-פרייַנדלעך. קיין שאלות, דעריבער, אויף געטינץ? יאָ? [תּלמיד קשיא, אַנינטעלאַדזשאַבאַל] >> גוט קשיא. וואָס אויב איר נאָר טייפּט אין אַ טשאַר, ווי F, און שלאָגן אַרייַן אָן אלץ טייפּינג 1 2 3; וואָס טאָן איר טראַכטן די נאַטור פון דעם שורה פון קאָד וואָלט דעמאָלט זייַן? אַזוי ססקאַנף קענען דעקן אַז אויך, ווייַל אין אַז פאַל, עס ס ניט געגאנגען צו פּלאָמבירן N אָדער C; עס ס געגאנגען צו אַנשטאָט צוריקקומען 0. אין וואָס פאַל, איך בין אויך קאַטשינג אַז סצענאַר, ווייַל די דערוואַרט ווערט איך ווילן איז 1. איך נאָר ווילן 1, און בלויז 1 זאַך צו זייַן אָנגעפילט. גוט קשיא. אנדערע? אַלע רעכט, אַזוי לאָזן ס נישט גיין דורך אַלע פון ​​די פאַנגקשאַנז אין דאָ, אָבער דער איינער וואָס מיינט צו זייַן, טאָמער, פון רוען אינטערעס איז געצטרינג ווייַל עס טורנס אויס אַז געטפלאָאַט, געטינט, געטדאָובלע, געטלאָנגלאָנג אַלע פּונט אַ פּלאַץ פון זייער פאַנגקשאַנאַליטי צו געצטרינג. אַזוי לאָזן ס נעמען אַ קוק אין ווי ער איז ימפּלאַמענטאַד דאָ. דאס איינער קוקט אַ קליין קאָמפּלעקס אָבער עס ניצט די זעלבע פאַנדאַמענאַלז אַז מיר אנגעהויבן גערעדט וועגן לעצטע וואָך. אַזוי אין געצטרינג, וואָס נעמט ניט אַרגומענט ווי פּער די פּאָסל אַרויף דאָ, און עס קערט אַ שטריקל; אַזוי איך בין דיקלערינג אַ שטריקל גערופן באַפער. איך טאָן ניט טאַקע וויסן וואָס אַז ס 'געגאנגען צו זייַן געניצט פֿאַר נאָך, אָבער מיר וועט זען. קוקט ווי קאַפּאַציטעט איז, דורך פעליקייַט, 0; נישט גאַנץ זיכער ווו דאָס איז געגאנגען. ניט זיכער וואָס N ס געגאנגען צו זייַן געניצט פֿאַר נאָך. אבער איצט עס ס געטינג אַ ביסל מער טשיקאַווע, אַזוי אין שורה 243, מיר דערקלערן אַ ינט C, דאָס איז סאָרט פון אַ נאַריש דעטאַל. א טשאַר איז 8 ביטן, און 8 ביטן קענען קראָם ווי פילע פאַרשידענע וואַלועס? 256. די פּראָבלעם איז, אויב איר ווילן צו האָבן 256 פאַרשידענע אַסקי אותיות, וואָס דאָרט זענען, אויב איר טראַכטן צוריק, און דאָס איז נישט עפּעס צו מעמערייז. אבער אויב איר טראַכטן צוריק צו אַז גרויס אַסקי טשאַרט מיר האט וואָכן צוריק, עס זענען געווען, אין אַז פאַל, 128 אָדער 256 אַסקי אותיות. מיר געוויינט אַלע די פּאַטערנז פון 0 ס און 1 ס אַרויף. אַז ס אַ פּראָבלעם אויב איר ווילן צו זייַן ביכולת צו דיטעקט אַ טעות. ווייַל אויב איר ניטאָ שוין ניצן 256 וואַלועס פֿאַר דיין אותיות, איר האט נישט טאַקע פּלאַן פאָרויס, ווייַל איצט איר האָבן קיין וועג פון זאגן, "דאס איז נישט אַ לעגיט כאַראַקטער; דעם איז עטלעכע עראָוניאַס אָנזאָג". אַזוי וואָס די וועלט טוט איז, זיי נוצן דעם ווייַטער ביגאַסט ווערט, עפּעס ווי אַן ינט אַזוי אַז איר האָט אַ משוגע נומער פון ביטן, 32 פֿאַר 4000000000 מעגלעך וואַלועס, אַזוי אַז איר קענען פשוט סוף אַרויף ניצן, יסענשאַלי, 257 פון זיי, 1 פון וואָס האט עטלעכע ספּעציעל טייַטש ווי אַ טעות. אַזוי לאָזן ס זען ווי דאָס אַרבעט. אין שורה 246, איך האב דעם גרויס בשעת שלייף וואָס איז פאַך פגעטק; F טייַטש טעקע, געטק, און דעמאָלט סטדין. טורנס אויס דאָס איז נאָר די מער גענוי וועג פון זאגן "לייענען אַרייַנשרייַב פון די קלאַוויאַטור". נאָרמאַל אַרייַנשרייַב מיטל קלאַוויאַטור, נאָרמאַל רעזולטאַט מיטל פאַרשטעלן, און נאָרמאַל טעות, וואָס מיר וועט זען אין פּסעט 4, מיטל די פאַרשטעלן, אָבער אַ ספּעציעל טייל פון די פאַרשטעלן אַזוי אַז עס ס נישט קאָנפלאַטעד מיט פאַקטיש רעזולטאַט אַז איר בדעה צו דרוקן; אָבער מער אויף אַז אין די צוקונפֿט. אַזוי פגעטק נאָר מיטל לייענען איין כאַראַקטער פון די קלאַוויאַטור, און קראָם עס ווו? קראָם עס אין C, און דעמאָלט טשעק, אַזוי איך בין נאָר ניצן עטלעכע בוליאַן קאַנדזשאַנגקשאַנז דאָ, טשעק אַז עס טוט נישט גלייַך \ N, אַזוי דער באַניצער האט שלאָגן אַרייַן. מיר ווילן צו האַלטן בייַ אַז פונט, סוף פון די שלייף, און מיר אויך ווילן צו טשעק פֿאַר די ספּעציעל קעסיידערדיק, עאָף, וואָס אויב איר וויסן אָדער טרעפן - וואָס טוט עס שטיין פֿאַר? סוף פון טעקע. אַזוי דאָס איז מין פון נאַנסענסיקאַל, ווייַל אויב איך בין טייפּינג בייַ די קלאַוויאַטור, דאָרט ס טאַקע קיין טעקע ינוואַלווד אין דעם, אָבער דאָס איז נאָר סאָרט פון די דזשאַנעריק טערמין געניצט צו מיינען אַז גאָרנישט אַנדערש איז קומענדיק פון דער מענטש 'ס פינגער. עאָף. סוף פון טעקע. ווי אַ באַזונדער, אויב איר ווע אלץ שלאָגן קאָנטראָל די בייַ דיין קלאַוויאַטור, נישט אַז איר וואָלט האָבן נאָך; איר ווע שלאָגן קאָנטראָל C. אבער קאָנטראָל די סענדז דעם ספּעציעל קעסיידערדיק גערופן עאָף. אַזוי איצט מיר נאָר האָבן עטלעכע דינאַמיש זכּרון אַלאַקיישאַן. אַזוי אויב N + 1> קאַפּאַציטעט, איצט איך וועט דערקלערן ען. N איז פּונקט ווי פילע ביטעס זענען דערווייַל אין די באַפער, די שטריקל וואָס איר ניטאָ דערווייַל בנין אַרויף פון דעם באַניצער. אויב איר האָט מער אותיות אין דיין באַפער ווי איר האָבן קאַפּאַציטעט אין די באַפער, ינטויטיוולי, וואָס מיר דאַרפֿן צו טאָן דעמאָלט איז אַלאַקייט מער קאַפּאַציטעט. איך בין געגאנגען צו אָפּשעפּן איבער עטלעכע פון ​​די אַריטמעטיק דאָ און פאָקוס נאָר אויף דעם פֿונקציע דאָ. איר וויסן וואָס מאַללאָק איז, אָדער בייַ מינדסטער בכלל באַקאַנט. נעמען אַ טרעפן וואָס רעאַללאָק טוט. [תּלמיד ענטפֿערן, אַנינטעלאַדזשאַבאַל] >> יאָ. און עס ס נישט גאַנץ אַדינג זכּרון; עס רעאַללאָקאַטעס זכּרון ווי גייט: אויב דאָרט ס נאָך צימער אין די סוף פון די שטריקל צו געבן איר מער פון וואָס זכּרון ווי עס ערידזשנאַלי גיט איר, דאַן איר וועט באַקומען אַז נאָך זכּרון. אַזוי איר קענען נאָר פּאַטינג די סטרינגס אותיות צוריק צו צוריק צו צוריק צו צוריק. אבער אויב אַז ס 'נישט דער פאַל, ווייַל איר געווארט אויך לאַנג און עפּעס טראַפ גאַט פּלאַפּט אין זכּרון עס, אָבער דאָרט ס עקסטרע זכּרון אַראָפּ דאָ, אַז ס אָוקיי. רעאַללאָק איז געגאנגען צו טאָן אַלע די שווער ליפטינג פֿאַר איר, מאַך דעם שטריקל איר ווע לייענען אין אַזוי ווייַט פון דאָ, לייגן עס אַראָפּ דאָרט, און דאַן געבן איר עטלעכע מער סטאַרטפּאַס בייַ אַז פונט. אַזוי מיט אַ כוואַליע פון ​​די האַנט, לאָזן מיר זאָגן אַז וואָס געצטרינג איז טאן איז עס ס סטאַרטינג מיט אַ קליין באַפער, אפֿשר 1 איין כאַראַקטער, און אויב דער באַניצער טייפּס אין 2 אותיות, געצטרינג ענדס אַרויף פאַך רעאַללאָק און זאגט, 'ו, 1 כאַראַקטער איז ניט גענוג. געבן מיר 2 אותיות. ' דעריבער אויב איר לייענען דורך די לאָגיק פון די שלייף, עס ס געגאנגען צו זאָגן, 'ו, דער באַניצער טייפּט אין 3 אותיות. געבן מיר איצט ניט 2 אָבער 4 אותיות, דאַן געבן מיר 8, דאַן געבן מיר 16 און 32. ' דער פאַקט אַז איך בין דאַבלינג די קאַפּאַציטעט יעדער צייַט מיטל אַז די באַפער איז נישט געגאנגען צו וואַקסן סלאָולי. עס ס געגאנגען צו וואַקסן סופּער שנעל, און וואָס זאל זייַן די מייַלע פון ​​וואָס? פארוואס בין איך דאַבלינג די גרייס פון דעם באַפער, אַפֿילו כאָטש דער באַניצער זאל נאָר דאַרפֿן 1 עקסטרע כאַראַקטער פון די קלאַוויאַטור? [תּלמיד ענטפֿערן, אַנינטעלאַדזשאַבאַל]. >> וואָס ס וואָס? פּונקט. איר טאָן ניט האָבן צו וואַקסן עס ווי אָפֿט. און דאָס איז נאָר מין פון אַ - יור כעדזשינג דיין בעץ דאָ. דער געדאַנק זייַענדיק אַז איר טאָן נישט וועלן צו רופן רעאַללאָק אַ פּלאַץ, ווייַל עס טענדז צו זייַן פּאַמעלעך. קיין צייַט איר פרעגן די אַפּערייטינג סיסטעם פֿאַר זכּרון, ווי איר וועט באַלד זען אין אַ צוקונפֿט פּראָבלעם שטעלן, עס טענדז צו נעמען עטלעכע מאָל. אַזוי מינאַמייזינג אַז סומע פון ​​צייַט, אַפֿילו אויב איר ניטאָ ווייסטינג עטלעכע פּלאַץ, טענדז צו זייַן אַ גוטע זאַך. אבער אויב מיר לייענען דורך די לעצט טייל פון געצטרינג דאָ, און ווידער, פארשטאנד יעדער איין שורה דאָ איז ניט אַזוי וויכטיק הייַנט. אבער באַמערקן אַז עס יווענטשאַוואַלי רופט מאַללאָק ווידער, און עס אַלאַקייץ פּונקט ווי פילע ביטעס ווי עס דאַרף פֿאַר דעם שטריקל און דעמאָלט ווארפט ער אַוועק דורך פאַך פֿרייַ, די יקסעסיוולי גרויס באַפער, אויב עס טאַקע גאַט דאַבאַלד אויך פילע מאל. אין קורץ, אַז ס ווי געצטרינג האט שוין ארבעטן אַלע דעם צייַט. כל עס טוט איז לייענען איין כאַראַקטער אין אַ צייַט ווידער און ווידער און ווידער און יעדער מאָל עס דאַרף עטלעכע נאָך זכּרון, עס פרעגט די אַפּערייטינג סיסטעם פֿאַר עס דורך פאַך רעאַללאָק. קיין שאלות? אַלע רעכט. אַ באַפאַלן. איצט אַז מיר פֿאַרשטיין פּוינטערז, אָדער בייַ מינדסטער זענען ינקריסינגלי באַקאַנט מיט פּוינטערז, לאָזן ס באַטראַכטן ווי די גאנצע וועלט סטאַרץ צו ייַנבראָך אויב איר טאָן ניט גאַנץ באַשיצן קעגן אַדווערסעריאַל ניצערס, מענטשן וואס זענען טריינג צו כאַק אין דיין סיסטעם. מענטשן וואס זענען טריינג צו גאַנווענען דיין ווייכווארג דורך סערקאַמווענטינג עטלעכע רעגיסטראַציע קאָד אַז זיי זאל אַנדערש האָבן צו טיפּ ין נעמען אַ קוק אין דעם בייַשפּיל דאָ, וואָס איז נאָר C קאָד וואָס האט אַ פֿונקציע הויפּט בייַ די דנאָ, אַז רופט אַ פֿונקציע פו, און וואָס איז עס גייט פארביי צו פו? [תּלמיד] א איין אַרגומענט. >> סינגלע אַרגומענט. אַזוי אַרגוו [1], וואָס מיטל דער ערשטער וואָרט דער באַניצער טייפּט בייַ די באַפֿעל שורה נאָך אַ.אָוט אָדער וועלכער די פּראָגראַם איז גערופן. אַזוי פו, בייַ די שפּיץ, נעמט אין אַ טשאַר *, אָבער טשאַר * איז נאָר וואָס? שטריקל. עס ס 'גאָרנישט נייַ דאָ, און אַז שטריקל איז אַרביטרעראַלי זייַענדיק גערופן באַר. אין דעם שורה דאָ, טשאַר C [12], אין סאָרט פון האַלב-טעכניש ענגליש, וואָס איז דעם שורה טאן? מענגע פון ​​-? אותיות. געבן מיר אַ מענגע פון ​​12 אותיות. אַזוי מיר זאל רופן דעם אַ באַפער. עס ס טעקניקלי גערופן C, אָבער אַ באַפער אין פּראָגראַממינג נאָר מיטל אַ בינטל פון פּלאַץ אַז איר קענען שטעלן עטלעכע שטאָפּן ין דעמאָלט לאַסטלי, מעמקפּי, מיר ווע נישט געניצט פאר. אבער איר קענען מיסטאָמע טרעפן וואָס עס טוט. עס קאפיעס זכּרון. וואָס טוט עס טאָן? נו, עס משמעות קאפיעס באַר, זייַן אַרייַנשרייַב, אין C, אָבער נאָר אַרויף צו די לענג פון באַר. אבער דאָרט ס אַ באַג דאָ. אָוקיי, אַזוי טעקניקלי מיר זאָל טאַקע טאָן סטרלען (באַר) X סיזעאָף (טשאַר), אַז ס ריכטיק. אבער אין די ערגסט פאַל דאָ, לאָזן ס יבערנעמען אַז דאַץ - אַזוי, אָוקיי. דעמאָלט דאָרט ס 2 באַגז. אַזוי סיזעאָף (טשאַר), אַלע רעכט, לאָזן ס מאַכן דעם אַ ביסל ווידער. אַזוי איצט דאָרט ס נאָך אַ באַג, וואָס איז וואָס? [תּלמיד ענטפֿערן, אַנינטעלאַדזשאַבאַל] >> קוק פֿאַר וואָס? אָוקיי, אַזוי מיר זאָל זייַן קאָנטראָלירונג פֿאַר נאַל, ווייַל שלעכט זאכן פּאַסירן ווען דיין טייַטל איז נאַל, ווייַל איר זאל סוף אַרויף געגאנגען דאָרט, און איר זאָל נישט אלץ זייַן געגאנגען צו נאַל דורך דערעפערענסינג עס מיט די * אָפּעראַטאָר. אַזוי אַז ס 'גוט, און וואָס אַנדערש זענען מיר טאן? לאַדזשיקלי דאָרט ס אַ פלאָ דאָ אויך. [תּלמיד ענטפֿערן, אַנינטעלאַדזשאַבאַל] >> אזוי טשעק אויב אַרגק ≥ 2? אָוקיי, אַזוי דאָרט ס 3 באַגז אין דעם פּראָגראַם דאָ. מיר ניטאָ ניט קאָנטראָלירונג אויב דער באַניצער פאקטיש טייפּט אין עפּעס אין אַרגוו [1], גוט. אַזוי וואָס ס די דריט באַג? יאָ? [תּלמיד ענטפֿערן, אַנינטעלאַדזשאַבאַל] >> גוט. אַזוי מיר אָפּגעשטעלט איין סצענאַר. מיר ימפּליסאַטלי אָפּגעשטעלט טאָן נישט קאָפּי מער זכּרון ווי וואָלט יקסיד די לענג פון באַר. אַזוי אויב דער שטריקל דער באַניצער טייפּט אין איז 10 אותיות לאַנג, דאָס איז געזאגט, 'בלויז קאָפּיע 10 אותיות.' און אַז ס אָוקיי, אָבער וואָס אויב דער באַניצער טייפּט אין אַ וואָרט אין די פּינטלעך ווי אַ 20 כאַראַקטער וואָרט; דעם איז, געזאגט קאָפּיע 20 אותיות פון באַר אין וואָס? C, אַנדערש באקאנט ווי אונדזער באַפער, וואָס מיטל איר נאָר געשריבן דאַטן צו 8 ביטע לאָוקיישאַנז אַז איר טאָן ניט אייגן, און איר טאָן ניט אייגן זיי אין די געפיל אַז איר קיינמאָל אַלאַקייטיד זיי. אַזוי דאָס איז וואָס ס 'בכלל באקאנט ווי די באַפער לויפן באַפאַלן, אָדער באַפער באַדעקן באַפאַלן, און עס ס באַפאַלן אין די געפיל אַז אויב דער באַניצער אָדער די פּראָגראַם אַז ס פאַך דיין פֿונקציע איז טאן דעם מאַלישיסלי, וואָס פאקטיש כאַפּאַנז ווייַטער קען זייַן גאַנץ שלעכט. זאל ס נעמען אַ קוק בייַ דעם בילד דאָ. דאס בילד רעפּראַזענץ דיין אָנלייגן פון זכּרון. און צוריקרופן אַז יעדער צייַט איר רופן אַ פֿונקציע, איר באַקומען דאָס ביסל ראַם אויף די אָנלייגן און דעמאָלט אנדערן און דעמאָלט אנדערן און דעמאָלט אנדערן. און אַזוי ווייַט מיר ווע נאָר מין פון פאַרטראָגן די אַוועק ווי רעקטאַנגגאַלז אָדער דאָרט אויף די ברעט אָדער אויף די פאַרשטעלן דאָ. אבער אויב מיר פארגרעסער אין אויף איינער פון יענע רעקטאַנגגאַלז, ווען איר רופן אַ פֿונקציע פו, עס טורנס אויס אַז דאָרט ס מער אויף דעם אָנלייגן ין פון וואָס ראַם און אַז גראָדעק ווי נאָר X און י און אַ און ב, ווי מיר האבן גערעדט וועגן ויסבייַטן. עס טורנס אויס אַז עס זענען עטלעכע נידעריקער-מדרגה פרטים, צווישן זיי צוריקקומען אַדרעס. אַזוי עס טורנס אויס ווען הויפּט רופט פו, הויפּט האט צו מיטטיילן פו וואָס הויפּט ס אַדרעס איז אין די קאָמפּיוטער 'ס זכּרון. ווייַל אַנדערש, ווי באַלד ווי פו איז געטאן עקסאַקיוטינג, ווי אין דעם פאַל דאָ, אַמאָל איר דערגרייכן דעם נאָענט געגרייַזלט בראַסע אין די סוף פון פו, ווי די כעק טוט פו וויסן ווו קאָנטראָל פון די פּראָגראַם איז געמיינט צו גיין? עס טורנס אויס אַז די ענטפער צו אַז קשיא איז אין אַז רויט גראָדעק דאָ. דאס רעפּראַזענץ אַ טייַטל, און עס ס אַרויף צו די קאָמפּיוטער צו קראָם, טעמפּערעראַלי, אויף די אַזוי-גערופן אָנלייגן די אַדרעס פון הויפּט אַזוי אַז ווי באַלד ווי פו איז געטאן עקסאַקיוטינג, דער קאָמפּיוטער ווייסט ווו און וואָס שורה אין הויפּט צו גיין צוריק צו. געהאלפן ראַם טייַטל דערציילט סימילאַרלי צו דעם. טשאַר * באַר דאָ רעפּראַזענץ וואָס? נו, איצט דעם בלוי אָפּשניט דאָ איז פו ס ראַם, וואָס איז באַר? אָוקיי, אַזוי באַר איז נאָר די אַרגומענט צו די פו פונקציאָנירן. אַזוי איצט מיר רע צוריק בייַ די באַקאַנט בילד. עס ס מער שטאָפּן און מער דיסטראַקשאַנז אויף דער עקראַן אָבער דאָס ליכט בלוי אָפּשניט איז וואָס מיר ווע שוין צייכענונג אויף די טשאַלקבאָאַרד פֿאַר עפּעס ווי ויסבייַטן. וואָס איז דער ראַם פֿאַר פו און דער נאָר זאַך אין עס רעכט איצט איז באַר, וואָס איז דעם פּאַראַמעטער. אבער וואָס אַנדערש זאָל זייַן אין די אָנלייגן, לויט צו דעם קאָד דאָ? טשאַר C [12]. אַזוי מיר זאָל אויך זען 12 סקווערז פון זכּרון, אַלאַקייטיד צו אַ בייַטעוודיק גערופן C. און טאַקע מיר טאָן האָבן אַז אויף דעם עקראַן. די זייער שפּיץ עס איז C [0], און דעריבער דער מחבר פון דעם דיאַגראַמע האט נישט אַרן צייכענונג אַלע פון ​​די סקווערז אָבער עס זענען טאַקע 12 דאָרט ווייַל אויב איר קוק בייַ די דנאָ רעכט, C [11], אויב איר ציילן פון 0, איז דער 12 אַזאַ ביטעס. אבער דאָ ס די פּראָבלעם: אין וואָס ריכטונג איז C גראָוינג? סאָרט פון אויבן אַראָפּ, רעכט? אויב עס סטאַרץ בייַ דער שפּיץ און וואקסט צו די דנאָ, טוט נישט קוקן ווי מיר לינקס זיך פיל סטאַרטפּאַס דאָ בייַ אַלע. מיר ווע מין פון פּייניד זיך אין אַ ווינקל, און אַז C [11] איז רעכט זיך קעגן באַר, וואָס איז רעכט זיך קעגן אָנלייגן ראַם טייַטל, וואָס איז רעכט זיך קעגן די צוריקקומען אַדרעס; דאָרט ס ניט מער צימער. אַזוי וואָס ס די ימפּלאַקיישאַן, דעריבער, אויב איר שרויף אַרויף, און איר פּרובירן לייענען 20 ביטעס אין אַ 12-ביטע באַפער? וואו זענען יענע 8 נאָך ביטעס געגאנגען צו גיין? ין אַלץ אַנדערש, עטלעכע פון ​​וואָס איז סופּער וויכטיק. און די רובֿ וויכטיק זאַך, פּאַטענטשאַלי, איז די רויט קעסטל דאָרט, צוריקקומען אַדרעס. ווייַל רעכן אַז איר זענט אָדער אַקסאַדענאַלי אָדער אַדווערסאַריאַללי אָווועררייט יענע 4 ביטעס, אַז טייַטל אַדרעס, נישט נאָר מיט מיסט, אָבער מיט אַ נומער וואָס כאַפּאַנז צו פאָרשטעלן אַ פאַקטיש אַדרעס אין זכּרון? וואָס ס די ימפּליקאַיטאָן, לאַדזשיקלי? [תּלמיד ענטפֿערס, אַנינטעלאַדזשאַבאַל] >> עקסאַקטלי. ווען פו קערט און היץ אַז געגרייַזלט בראַסע, די פּראָגראַם איז געגאנגען צו גיינ ווייַטער נישט צו צוריקקומען צו הויפּט, עס ס געגאנגען צו צוריקקומען צו וועלכער אַדרעס איז אין אַז רויט קעסטל. איצט, אין די פאַל פון סערקאַמווענטינג ווייכווארג רעגיסטראַציע, וואָס איז די אַדרעס אַז ס זייַענדיק אומגעקערט צו איז די פֿונקציע אַז נאָרמאַלי געץ גערופן נאָך איר 'ווע באַצאָלט פֿאַר די סאָפטווער און ינפּוטטעד דיין רעגיסטראַציע קאָד? איר קען סאָרט פון קונץ די קאָמפּיוטער אין נישט געגאנגען דאָ, אָבער אַנשטאָט, גיי אַרויף דאָ. אָדער, אויב איר ניטאָ טאַקע קלוג, אַ קעגנער קענען פאקטיש טיפּ אין בייַ די קלאַוויאַטור, פֿאַר בייַשפּיל, נישט אַ פאַקטיש וואָרט, נישט 20 אותיות, אָבער רעכן ער אָדער זי טייפּס אין עטלעכע אותיות וואָס פאָרשטעלן קאָד? און עס ס ניט געגאנגען צו זייַן C קאָד, עס ס געגאנגען צו זייַן די אותיות אַז פאָרשטעלן ביינערי מאַשין קאָודז, 0 ס און 1 ס. אבער רעכן זיי ניטאָ קלוג גענוג צו טאָן וואָס, צו עפעס פּאַפּ אין די געצטרינג פּינטלעך עפּעס וואָס איז יסענשאַלי צונויפגעשטעלט קאָד, און די לעצטע 4 ביטעס אָווועררייט אַז צוריקקומען אַדרעס, און וואָס אַדרעס טוט וואָס אַרייַנשרייַב טאָן? עס סטאָרז אין דעם רויט גראָדעק דער אַדרעס פון דער ערשטער ביטע פון ​​די באַפער. אַזוי איר האָבן צו זייַן טאַקע קלוג, און דאָס איז אַ פּלאַץ פון פּראָצעס און טעות פֿאַר שלעכט מען אויס דאָרט, אָבער אויב איר קענען רעכענען אויס ווי גרויס דאָס באַפער איז, אַזאַ וואָס די לעצטע ביסל ביטעס אין דעם אַרייַנשרייַב אַז איר צושטעלן צו די פּראָגראַם פּאַסירן צו זייַן עקוויוואַלענט צו דעם אַדרעס פון דער אָנהייב פון דיין באַפער, איר קענען טאָן דעם. אויב מיר זאָגן, נאָרמאַלי, העלא, און \ 0, אַז ס וואָס ענדס אַרויף אין די באַפער. אבער אויב מיר ניטאָ מער קלוג, און מיר פּלאָמבירן אַז באַפער מיט וואָס מיר וועט דזשאַנעריקלי רופן באַפאַלן קאָד, א, א, א, א: אַטאַק, באַפאַלן, באַפאַלן, באַפאַלן, ווו דאָס איז נאָר עפּעס וואָס טוט עפּעס שלעכט. נו, וואָס כאַפּאַנז אויב איר ניטאָ טאַקע קלוג, איר זאל טאָן דעם: אין די רויט קעסטל דאָ איז אַ סיקוואַנס פון נומערן: 80, גלויבנס, 35, 08. נאָטיץ אַז וואָס שוועבעלעך די נומער וואָס ס אַרויף דאָ. עס ס אין פאַרקערט סדר, אָבער מער אויף אַז עטלעכע אנדערע מאָל. נאָטיץ אַז דאָס צוריקקומען אַדרעס האט שוין דיליבראַטלי אָלטערד צו גלייַך דער אַדרעס אַרויף דאָ, נישט די אַדרעס פון הויפּט. אַזוי אויב דער שלעכט באָכער איז סופּער קלוג, ער אָדער זי איז געגאנגען צו אַרייַננעמען אין וואָס באַפאַלן קאָד עפּעס ווי, 'דיליט אַלע פון ​​דעם באַניצער' ס טעקעס. ' אָדער 'קאָפּי דער פּאַסווערדז,' אָדער 'שאַפֿן אַ באַניצער חשבון אַז איך קענען קלאָץ אין.' עפּעס בייַ אַלע; און דאָס איז ביידע די געפאַר און די מאַכט פון סי ווייַל איר האָבן צוטריט צו זכּרון דורך פּוינטערז און איר קענען דעריבער שרייַבן עפּעס איר ווילן אין אַ קאָמפּיוטער ס זכּרון. איר קענען מאַכן אַ קאָמפּיוטער טאָן עפּעס איר ווילן פשוט דורך ווייל עס שפּרינגען אַרום ין זייַן אייגן זכּרון פּלאַץ. און אַזוי, צו דעם טאָג, אַזוי פילע מגילה און אַזוי פילע וועבסיטעס וואָס זענען קאַמפּראַמייזד קאָכן אַראָפּ צו מענטשן גענומען מייַלע פון ​​דעם. און דאָס זאל ויסקומען ווי אַ סופּער-סאַפיסטאַקייטיד באַפאַלן, אָבער עס טוט נישט שטענדיק אָנהייב אַז וועג. דער פאַקט איז אַז וואָס שלעכט מען וועט טיפּיקלי טאָן איז, צי עס ס אַ פּראָגראַם אין אַ באַפֿעל שורה אָדער אַ גוי פּראָגראַם אָדער אַ וועבזייַטל, איז איר נאָר אָנהייב פּראַוויידינג ומזין. איר טיפּ אין אַ טאַקע גרויס וואָרט אין דער זוכן פעלד און שלאָגן אַרייַן, און איר וואַרטן צו זען אויב די וועבזייַטל קראַשיז. אָדער איר וואַרטן צו זען אויב דער פּראָגראַם מאַנאַפעסס עטלעכע טעות אָנזאָג. ווייַל אויב איר באַקומען מאַזלדיק, ווי די שלעכט באָכער, און איר צושטעלן עטלעכע משוגע אַרייַנשרייַב אַז קראַשיז די פּראָגראַם, אַז מיטל די פּראָגראַמיסט האט נישט ריכטנ זיך דיין שלעכט נאַטור וואָס מיטל איר קענען מיסטאָמע, מיט גענוג מי, גענוג פּראָצעס און טעות, רעכענען אויס ווי צו לוין אַ מער גענוי באַפאַלן. אַזוי ווי פיל אַ טייל פון זיכערהייַט איז ניט נאָר אַוווידינג די אנפאלן בעסאַכאַקל, אָבער דיטעקטינג זיי און פאקטיש קוקן בייַ לאָגס און געזען וואָס משוגע ינפּוץ האָט מען טייפּט אין דיין וועבזייַטל. וואָס זוכן טערמינען האָט מען טייפּט אין דיין וועבזייַטל אין האפענונגען פון איבערפולט עטלעכע באַפער? און דעם אַלע בוילז אַראָפּ צו די פּשוט באַסיקס פון וואָס ס אַ מענגע, און וואָס טוט עס מיינען צו אַלאַקייט און נוצן זכּרון? און שייַכות צו וואָס, אויך, איז דאָס. אַזוי לאָזן ס נאָר בליק ין פון אַ שווער פאָר נאָך ווידער. אַזוי איר צוריקרופן פון אַ וואָך אָדער צוויי צוריק אַז ווען איר שלעפּן טעקעס צו דיין ריסייקאַל בין אָדער אָפּפאַל קענען, וואָס כאַפּאַנז? [תּלמיד] גאָרנישט. >> יאָ, לעגאַמרע גאָרנישט. יווענטשאַוואַלי אויב איר לויפן נידעריק אויף דיסק פּלאַץ, פֿענצטער אָדער מעק אַס וועט אָנהייבן דיליטינג טעקעס פֿאַר איר. אבער אויב איר שלעפּן עפּעס אין עס, דעריבער עס ס ניט בייַ אַלע זיכער. אַלע אייער ראָאָמאַטע, פרייַנד אָדער משפּחה מיטגליד האט צו טאָן איז טאָפּל גיט, און וווואַלאַ. עס ס אַלע די סכעמאַטיש טעקעס אַז איר געפרוווט צו אויסמעקן. אַזוי רובֿ פון אונדז אין מינדסטער וויסן אַז איר האָבן צו רעכט גיט אָדער קאָנטראָל גיט און ליידיק די אָפּפאַל, אָדער עפּעס ווי אַז. אבער אַפֿילו דעמאָלט, וואָס טוט ניט גאַנץ טאָן די קונץ. ווייַל וואָס כאַפּאַנז ווען איר האָט אַ טעקע אויף דיין שווער פאָר אַז רעפּראַזענץ עטלעכע וואָרט דאָקומענט אָדער עטלעכע געפֿינען? און דעם רעפּראַזענץ דיין שווער פאָר, און לאָזן 'ס זאָגן דאָס שפּענדל דאָ רעפּראַזענץ אַז טעקע, און עס ס פארפאסט פון אַ גאַנץ בינטל פון 0 ס און 1 ס. וואָס כאַפּאַנז ווען איר נישט נאָר שלעפּן אַז טעקע צו די טראַשקאַן אָדער ריסייקאַל בין, אָבער אויך ליידיק עס? סאָרט פון גאָרנישט. עס ס נישט לעגאַמרע גאָרנישט איצט. איצט עס ס נאָר גאָרנישט, ווייַל אַ קליין עפּעס כאַפּאַנז אין די פאָרעם פון דעם טיש. אַזוי דאָרט ס עטלעכע מין פון דאַטאַבאַסע אָדער טיש ין פון אַ קאָמפּיוטער ס זכּרון אַז יסענשאַלי האט 1 זייַל פֿאַר טעקעס נעמען, און 1 זייַל פֿאַר טעקע ס אָרט, ווו דאָס זאל זייַן אָרט 123, נאָר אַ טראַפ - נומער. אַזוי מיר זאל האָבן עפּעס ווי קס.דזשפּג, און אָרט 123. און וואָס כאַפּאַנז דעמאָלט, ווען איר ליידיק דיין אָפּפאַל? וואָס גייט אַוועק. אבער וואָס טוט ניט גיין אַוועק איז דער 0 ס און 1 ס. אַזוי וואָס 'ס, דעריבער, דער קשר צו פּסעט 4? נו, מיט פּסעט 4, נאָר ווייַל מיר ווע אַקסאַדענאַלי ירייסט די סאָליד בליץ קאָרט וואָס האט אַלע פון ​​די פאָטאָס, אָדער נאָר ווייַל עס דורך שלעכט גליק געווארן פארדארבן, טוט נישט מיינען אַז די 0 ס און 1 ס זענען נישט נאָך דאָרט. אפֿשר אַ ביסל פון זיי זענען פאַרפאַלן ווייַל עפּעס גאַט פארדארבן אין דעם זינען אַז עטלעכע 0 ס געווארן 1 ס און 1 ס געווארן 0 ס. שלעכט זאכן קענען פּאַסירן ווייַל פון וואָגן ווייכווארג אָדער דעפעקטיווע ייַזנוואַרג. אבער פילע פון ​​יענע ביטן, אפֿשר אַפֿילו 100% פון זיי זענען נאָך דאָרט, עס ס נאָר אַז די קאָמפּיוטער אָדער דער אַפּאַראַט טוט ניט וויסן ווו געפֿינען 1 אנגעהויבן און ווו געפֿינען 2 אנגעהויבן, אָבער אויב איר, די פּראָגראַמיסט, וויסן, מיט אַ ביסל פון סאַווי, ווו יענע דזשפּעגס זענען אָדער וואָס זיי קוקן ווי, איר קענען פונאַנדערקלייַבן דעם 0 ס און 1 ס און זאָגן, 'ו. געפֿינען. ו, געפֿינען. ' איר קענען שרייַבן אַ פּראָגראַם מיט יסענשאַלי נאָר אַ פֿאַר אָדער בשעת שלייף אַז ריקאַווערז יעדער און יעדער איינער פון יענע טעקעס. אַזוי די לעקציע דעמאָלט, איז צו אָנהייבן "סיקיורלי" ירייסינג דיין טעקעס אויב איר 'ד ווי צו ויסמייַדן דעם בעסאַכאַקל. יא? [תּלמיד קשיא, אַנינטעלאַדזשאַבאַל] >> האָבן מער זכּרון ווי איר האט פריער - אָה! גוט קשיא. אַזוי וואָס, דעמאָלט, נאָך עמטיינג די אָפּפאַל, טוט דיין קאָמפּיוטער זאָגן איר אַז איר האָבן מער פֿרייַ פּלאַץ ווי איר האט פריער? אין אַ נאַטשעל, ווייַל עס ס ליגנעריש. מער טעקניקלי, איר טאָן האָבן מער פּלאַץ. ווייַל איצט איר האָבן געזאגט, איר קענען שטעלן אנדערע שטאָפּן ווו אַז טעקע אַמאָל איז געווען, אָבער וואָס טוט נישט מיינען די ביטן זענען געגאנגען אַוועק, און וואָס טוט נישט מיינען די ביטן זענען זייַענדיק געביטן אַלע 0 ס, פֿאַר בייַשפּיל, פֿאַר דיין שוץ. דורך קאַנטראַסט, אויב איר "סיקיורלי" מעקן טעקעס, אָדער פיזיקלי צעשטערן די מיטל, אַז טאַקע איז דער בלויז וועג, מאל, אַרום אַז. אַזוי וואָס טאָן ניט מיר לאָזן אויף אַז האַלב-סקערי טאָן, און מיר וועלן זען איר אויף מאנטאג. CS50.TV