[Powered by Google Translate] NATE Хардисон: У відэа на двайковыя, мы пакажам, як Уявім мноства цэлых лікаў ад нуля на ўверх, выкарыстоўваючы толькі лічбы нулём і адзінкай. У гэтым відэа, мы збіраемся выкарыстаць у двайковай сістэме злічэння ўяўляюць сабой тэкст, літары і такія, як добра. Навошта мы наогул гэта зрабіць? Ну, пад капотам, кампутар толькі сапраўды разумее нулёў і адзінак, двайковых лічбаў, так як гэтыя можа быць прадстаўлена ў лёгка з электрамагнітным рэчы. Напрыклад, думаць аб памяці кампутара, як доўга Радок з лямпачак, прычым кожны асобны лямпы ўяўляе сабой нуль, калі яна выключана, і адзін калі ён уключаны. Замест кучай лямпачак, некаторыя сучасныя памяці робіць гэта, выкарыстоўваючы кандэнсатары, якія трымаюць нізкі даручыць прадстаўляць нуля і высокі зарад прадстаўляюць адзін. Ёсць і іншыя метады, а таксама. Ва ўсякім выпадку, для таго, каб захоўваць усё ў памяці, мы павінны спачатку пераўтварыць яго ў нешта, што можа быць на самай справе прадстаўлены ў фізічным абсталяванні. Так што давайце думаць пра тое, як мы маглі б прадстаўляць лісты з двайковай сістэме злічэння. У ангельскай мове, у нас ёсць 26 літар у алфавітным,, B, C, D, і гэтак далей, аж да Z. Мы можам прысвоіць кожнаму з гэты лік, скажам ад нуля да 25, а затым з дапамогай двайковай сістэме злічэння, мы можам прадставіць кожнае лік у выглядзе паслядоўнасць нулёў і адзінак. Гэта не так ужо дрэнна. Тым не менш, гэта не будзе дастаткова. З дапамогай гэтай сістэмы, мы не можам на самай справе адрозненне паміж малыя і вялікія літары. Калі мы хочам, каб наш кампутар, каб мець магчымасць адрозніваць двух выпадкаў, то нам трэба яшчэ 26 чысла. А як наконт перыядаў, коскі і іншых знакаў прыпынку? На маёй клавіятуры, я атрымаў 32 з іх, у тым ліку ўсе спецыяльныя сімвалы, такія як ўстаўкі і амперсанда. Гэта не лічачы лічбавых знакаў, ад нуля да дзевяці, так як мы ўсё яшчэ хочам, каб мець магчымасць уводу лічбаў у дзесятковай пазначэнняў на кампутары, нават калі кампутар толькі сапраўды разумее двайковай сістэме злічэння пад капотам. І, нарэшце, мы павінны ўяўляць сабой прастору характар, так што нашы Space Bar працуе. Так, высвятляючы, як для прадстаўлення тэксту на кампутары займае трохі больш, чым мы маглі падумаць першапачаткова. Акрамя таго, выкажам здагадку, што мы тады прыдумалі нашы ўласныя кадоўкі Схема для прадстаўлення знакаў у выглядзе лікаў. Аднак мы вырашылі для кадавання сімвалаў непазбежна будзе адвольнай, як мы бачылі раней, калі мы казалі аб выкарыстанні Нумары нуля да 25 ўяўляюць літары да Z. Чаму б не выкарыстоўваць ад 10 да 35, так што мы можам выратаваць ад нуля да дзевяці для лічбавых знакаў? Там няма рэальнай прычыны, мы проста выбралі ўсё, што здавалася лепш для нас. Яшчэ ў пачатку 1960-х гадоў, гэта была рэальная праблема. Розныя вытворцы кампутараў выкарыстоўваюць розных схем кадавання, і гэта зрабіла сувязь паміж рознымі машынамі вельмі цяжкай задачай. Амерыканскі Нацыянальны Інстытут Стандартаў, ANSI, сфарміраваны камітэт па распрацоўцы агульнай схемы. А ў 1963 годзе амерыканскі стандартны код для інфармацыі Interchange, больш вядомы як ASCII, нарадзіўся. ASCII быў распрацаваны як сем-бітнай кадоўцы, якая азначае, што кожны знак уяўляе сабой камбінацыю 7 нулёў і адзінак. З улікам гэтых двух магчымых значэнняў, нуль ці адзін, для кожнага з сямі бітаў, ёсць два да сёмага ці 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, з загалоўнай літары, але малыя літары не пачынаюцца да 97. Такім чынам, мае 32 прастор паміж імі. Гэта здаецца дзіўным. Яны толькі 26 літар у алфавіце. Чаму падзяліць іх, як гэта? Зноў жа, калі мы паглядзім на двайковых уяўленняў, мы можам гл. шаблон. Вялікія прадстаўлена 1000001, а ніжні з'яўляецца прадстаўлены 1100001. Вялікія B прадстаўлена 1000010, і малыя Коммерсанта прадстаўлены 1100010. Ці можаце вы сказаць, што тут адбываецца? Біт, які ўжо другі злева, у два- пятых, для 32ths становішча, роўна 0 для ўсіх вялікіх літары, і 1 для ўсіх маленькіх літар. Гэта азначае, што пераўтварэнні з верхняга рэгістра ў ніжні рэгістр, і наадварот, гэта пытанне простае фліп-біт. Так што падводзіць нас да канца ASCII табліцы. Ці можаце вы ўзгадаць ўсё, што мы забыліся? Ну, што пра іспанскай enye, або Грэцкія або кірыліца? А як наконт кітайскіх іерогліфаў? Там вельмі шмат які застаўся з ASCII. Аднак, іншы стандарт пад назвай Unicode была распрацавана, каб пакрыць усе гэтыя сімвалы і многае іншае. Але гэта тэма для іншага часу. Мяне клічуць Нейт Хардисон. Гэта CS50.