[Powered by Google Translate] Нейт HARDISON: Във видеото на двоична, ние показваме как да
представлява набор от цели числа, от нула до
се използват само цифрите нула и единица.
В това видео, ние ще използва двоична бройна система
представляват текст, писма и такива, както и.
>> Защо да се притеснява да направите това?
Е, под капака, компютър само наистина
разбира нули и единици, двоичните цифри, тъй като те
лесно могат да бъдат представени с електромагнитни неща.
>> Например, помислете за паметта на компютъра ви като дълго
низ от електрически крушки, като всяка отделна крушка
представлява нула, ако е изключена и
ако е включен.
Вместо да използвате един куп крушки, някои съвременни
паметта това се използват кондензатори, които държат ниска
събира представляват нула и високо заплащане
да представлява един.
>> Има и други техники, както добре.
Както и да е, за да запазите всичко в паметта, ние трябва да
първа го превърне в нещо, което действително може да бъде
представени във физическия хардуер.
Така че нека да помислим за това как бихме могли да представляват писма с
двоична бройна система.
На английски език, ние имаме 26 букви в азбучен,,
>> B, C, D, и така нататък, до Z. Ние можем да се дава на всеки един от
тези номера, да речем нула до 25, и след това с помощта
нотация двоичен, ние може да представлява всеки номер, като
поредица от нули и единици.
Това не е твърде лошо.
Обаче, че това няма да бъде достатъчно.
С тази система, ние не може действително да се прави разлика между
горните и малки букви.
Ако искаме нашия компютър да бъде в състояние да направи разграничение между
двата случая, тогава ще се нуждаете от допълнителни 26 номера.
А какво да кажем за периоди, запетаи и
други препинателни знаци?
>> На моята клавиатура, аз имам 32 от тях, включително всички
специални символи като каретката и амперсанд.
Това не е включително и цифрени знаци, нула през девет,
тъй като ние все още искаме да бъдем в състояние да въвеждате числа в десетична
нотация на компютъра, дори ако компютърът само наистина
разбира двоична бройна система под капака.
>> И накрая, ние ще трябва да представлява характер пространство
че нашата Space Bar работи.
Така че разберете как да представлява текст на компютъра
отнема малко повече, отколкото бихме могли да си помислил първоначално.
Освен това, се предполага, че ние след това излезе с нашата собствена кодиране
схема да представляват символи като числа.
Все пак реши да се кодират героите неизбежно ще бъде
произволно, както видяхме по-рано, когато говорихме за използване на
номера нула до 25, за да представляват буквите А
до Z. Защо не използвате от 10 до 35, така че ние можем да спасим
нула през девет за цифрени знаци?
>> Има няма реална причина, просто са решили, каквото изглежда
най-доброто за нас.
Обратно в началото на 1960-те години, това е истински проблем.
Различните производители на компютри са използвали
различни схеми за кодиране, и това прави комуникационни
между различни машини много трудна задача.
Американският национален институт по стандартизация, ANSI,
формира комисия, която да разработи обща схема.
И през 1963 г., American Standard Code за информация
Обмен на данни, по-известен като ASCII, е роден.
>> ASCII е проектиран като седем-битово кодиране, които
означава, че всеки герой е представен чрез комбинация
от седем нули и единици.
С тези две възможни стойности, нула или един за всеки
от седемте бита, има два до седмия или 128
символите, които могат да бъдат представени с ASCII
кодираща схема.
Така че 128 знака звучи като много, нали?
Е, не забравяйте, че има 26 малки букви в
Английски, още 26 главни букви, 10 цифрени знаци,
32 препинателни знаци и специални символи,
и един символ.
>> Това ни поставя в 95, така че имаме още 33 знака, че ние
може да представлява.
>> Така че това, което е останало?
Е, в дните на развитието на ASCII, телетип
машини, които са пишещи машини, които се използват за
изпращане на съобщения през мрежата, са били широко разпространени.
И тези машини са допълнителни знаци, използвани за
контрол над тях, например, за да им кажа кога да се движат
печатащата глава надолу по линията, нов ред или нов ключ линия,
кога да се премести в лявото поле, за връщане,
или просто се върнете ключ и кога да се върнете едно пространство,
за връщане характер, и така нататък.
>> Тези символи се наричат ​​контролни знаци, и те
съставляват останалата част на ASCII набор.
Така че, ако се вгледаме в ASCII таблицата, ние виждаме, че първо
32 числа, нула до 31, са запазени за контрол
символи.
Но ние току-що каза, че има 33 контролни символи.
Какъв е проблемът?
Е, нула и 127, първият и последният от
ASCII набор, има специални модели битови, всички нули и всички
, съответно.
>> Дизайнерите на ASCII реши, следователно, за да се
запази тези номера за допълнителни специални символи,
а именно нулевата характер и характера DEL.
Null и DEL са били предназначени за редактиране на хартиена лента, която се използва
да бъде общ начин за съхраняване на данни.
Хартиена лента буквално беше дълга ивица от хартия, и в
редовни интервали на лентата, бихте удар
дупки за съхраняване на данни.
В зависимост от ширината на лентата, всяка колона ще бъде
могат да се настанят пет, шест, седем, или осем бита.
>> Да представлява нулева малко, можеш да направиш нищо за лентата, щеше да
просто остави празно пространство.
За малко, щеше да удари една дупка.
Нулевата характер просто ще остава празна колона,
показва всички нули.
И характера DEL удар колона, пълна с дупки
чрез вашата лента.
В резултат на това можете да използвате характер DEL, за да изтриете
информация.
Представете си, че като попълнено гласуване на избори и след това
пробиване на всички unpunched дупки.
>> Невалидна бюлетина, защото е невъзможно да се
кажа какво оригиналните гласове.
Докато характер DEL все още се използва, е най-модерната
Бутон за изтриване, нулевата характер започна да се използва като
прекратяване характер за струнни C и
някои други данни формати.
Можете да го знам като характер наклонена черта нула
тъй като това е начина, по който го представлява в писмена форма.
Така че обратно към ASCII нашата маса.
След първите 32 контролни символи дойде 95
входните знаци.
>> Има няколко готини дизайнерски решения на стойност
говорим тук.
Първо, десетични цифри знаци, нула до девет,
съответства на номера 48 до 57, което изглежда
незабележително, докато ние гледаме числата 48 до 57
, написана в двоична бройна система.
Ако го направим, тогава ще видите, че цифрата характер,
нула, съответства 0110000, един карти 0110001, две, за да
0110010, и така нататък.
Вижте модела?
Всяка цифра характер е свързан с отговарящите на
еквивалент в двоична бройна система, префикс 011.
Следващата, можете да забележите, че главни букви започне в 65,
с главни букви A, но малки букви
не започне до 97.
Така че има 32 пространства между тях.
Това изглежда странно.
Те са само 26 букви в азбуката.
>> Защо да ги разделим по този начин?
Отново, ако се вгледаме в двоични представяния, ние можем да
види модела.
Главни А е представена от 1000001 и малки букви, а е
представлявано от 1100001.
Главните Б е представена от 1000010, и малки букви б е
представлявано от 1100010.
Можете ли да кажете какво става тук?
Тази част, която е втората от ляво, в двете
пети, за 32ths позиция е 0 за всички главни
букви, и един за всички малки букви.
>> Това означава, че конвертиране от главни на малки букви и
обратно, е въпрос на прости флип малко.
Така че това ни води до края на ASCII таблица.
Можеш ли да мисля за всичко, което сме забравили?
Е, какво да кажем за испанския enye, или
Гръцки или кирилски азбуки?
А какво ще кажеш за китайски йероглифи?
Има много неща, които са оставени на ASCII.
Въпреки това, е друг стандарт, наречен Unicode
за обхващане на всички тези
герои и още много други.
>> Но това е тема за друг път.
Моето име е Нейт Hardison.
Това е CS50.