Doug LLYOYD: Taigi šešioliktainius numeriai, tarsi mes turėjome kitą bazių skaičius schema tiesa? Na, dauguma Vakarų kultūrų, kaip jūs tikriausiai esate susipažinę, naudoti dešimtainę system-- bazę 10, atstovauti skaitmeniniai duomenys. Mes turime skaitmenys 0, 1, 2, 3, 5, 6, 7,8,9. Ir jei mes turime atstovauti vertės yra didesnės nei devyni, mes galime sujungti tuos skaitmenis naudojant vietos vertės sąvoką. Taigi 10, mes turime 1 skaitmenų po to 0 skaitmeniu ir mes intuityviai suprasti kad tai, ką mes darome yra mes dauginant pirmasis 1 10, ir tada pridedant 0 iš viso 10. Kompiuteriai kažką daryti gana panašūs, kaip jūs tikriausiai susipažinęs, su dvejetainiu system-- bazę 2. Skirtumas ten yra kad yra tik 2 skaitmenys dirbti with-- 0 ir 1. Ir taip mūsų vieta vertybes, vietoj to, kad vienas, dešimt, šimtą, tūkstantį, nes jie būtų į dešimtainiai sistema, yra vienas, du, keturių, aštuonių, ir taip toliau. Štai ką nors, tie 0 ųjų ir 1-ųjų, ypač jei mes yra kompiuterių specialistų ir mes darome programavimo daug ar darbo su kompiuteriais, einasi reikia matyti binarinių numeriais. Ir tie, 0 "ir 1 's didžiuosiuose prekybos centruose gali būti labai sunku apdoroti. Mes galime ne tik pažvelgti į eilutę 0 "ir 1" ir būtinai žinoti tiksliai kas tai yra. Tačiau jis vis dar naudinga turėti skubaus duomenys taip pat, kad kompiuteris veikia. Mes turime šią sąvoką šešioliktainis sistema, kuri yra bazė 16, vietoj to, bazinės 10 arba bazinės 2. Tai reiškia, kad mes turime 16 skaitmenų dirbti su vietoj 10 ar 2. Ir tai yra daug daugiau glausta būdas išreikšti binarinė informacija apie kompiuterio sistemoje, tai daug daugiau žmonių suprantama. Taigi, mes turime skaitmenys 0 iki 9, ir tada mes taip pat turime šiuos papildomus šešis digits-- a, b, c, d, e, f ir, kurios sudaro 10, mūsų sąvoka 10, 11, 12, 13, 14 ir 15, ir po kablelio. Kartais, beje, jūs taip pat pamatyti šias A iki F-aisiais kaip kapitalo A per F, kuris yra Kaip aš linkęs daryti. Tai tik mano pirmenybė stilius, tačiau bet kuriuo atveju yra gerai, jie abu sudaro gana tas pats dalykas. Taigi, kodėl yra šešioliktainis kietas? Kodėl mes turime naudoti šį kita papildoma bazė? Mes jau turime 2 ir 10, kodėl mes turime 16? Na 16 yra iš 2 galia, ir taip kiekvienas šešioliktainis skaitmuo, 0 per f, atitinka unikalus Rikiavimas arba unikalus išdėstymas 4 dvejetainiais skaitmenimis, 4 bitai. Ir taip ta prasme, mes galime išreikšti labai ilgas, sudėtingas, dvejetainiai skaičiai šešioliktainis į daug glausta būdas, neprarandant informacijos arba turintys atlikti ypač sudėtingų konversijas apie tuos numerius. Taigi, kaip aš ką tik pasakė, kiekvienas šešioliktainis skaitmuo atitinka unikalus sutvarkome 4 dvejetainiais skaitmenimis. Taigi dvejetainis seka 0000 atitinka šešioliktainis skaitmuo 0. 0110 atitinka šešioliktainis skaitmuo 6 d. Ir 1111 Atitinka į šešioliktainis skaitmuo f. Jei jūs ieškote Ši diagrama, ypač jei jūs ieškote ne kairėje pusėje diagramą, jau galite pamatyti ten tiek dviprasmybes problema čia. Dešimtainis 0 yra gana daug nesiskiria nuo šešioliktainėje 0, išskyrus tuo, kad jis pagal stulpelį, sako šešioliktainis. Bet mes tikriausiai ne visada turi tą stulpelį ten. Paprastai, kai mes išreikšti numerius į šešioliktainį aiškiai atskirti juos nuo dešimtainio žymėjimo, mes paprastai priešdėlis juos su priešdėliu 0x. 0x reiškia nieko iš tikrųjų, tai tik užuomina mums, kaip žmonėms kad tai, ką mes ruošiamės pamatyti, ar ruošiatės pradėti apdorojimą, yra šešioliktainis skaičius. Akivaizdu, dėl to padidėja skaitmenys A, B, c, d, ir f, kuris atitinka 10-15 tai gana vienareikšmis tai tai yra šešioliktainis skaičius. Ir iš tiesų, bet šešioliktainis numeris, kuris turi raštus į jį, tikriausiai gana akivaizdu, kaip šešioliktainis skaičius. Bet, vis tiek, nes Siekiant aiškumo, tai visada gera idėja priešdėlis kaskart kreiptis į skaitmeniu kaip šešioliktainis skaičius pagal priešdėlį yra 0x. Taigi, dvejetainis, nes mes sakė, turi vietovardžių vertybes. Yra aisiais tie vietą A poromis vieta, Fours vieta, ir aštuonias vieta. Ir dešimtosios dalies taip pat turi vietovardžių vertybes, ones, dešimtis, šimtus, ir tūkstančiai kad mes visi gali prisiminti nuo pradinėje mokykloje. Ir šešioliktainis nėra Išimtis čia, tikrai. Ji taip pat turi vietovardžių vertybes, bet vietoj būties galių 2 arba įgaliojimų 10, jie įgaliojimus 16. Taigi matome, kaip to mes numerį gana aiškiai žinau, tai 397, ar ne? Na, jei mes matome skaičių, kaip tai, mes žinome, tai ne 397 nebėra. Tai yra šešioliktainis numeris trys devynerių septynių. Tai ne 397, tai reiškia, kažkas kitokio, nes mes naudojame įgaliojimus 16 Kadangi visi mūsų vieta vertybių vietoj galių 10. Tiesą sakant, vieta vertybės čia būtų būti tie vietą, sixteens vieta, ir du šimtus penkiasdešimt šešias vieta, kurie atitinka mūsų idėja tie vieta, dešimtys vieta, o šimtai vieta, jei skaičius buvo 397. Bet kadangi tai 0x 397, mes turime Ones vieta, sixteens vieta, ir dviejų šimtų penkiasdešimt šešias vieta. Arba, priedas prie 0 vietoje, kuri yra 1 16. A16 į pirmąjį elektros vietoje, 16. A16 langeliais vietą, 256 ir taip toliau, ir taip toliau, ir taip toliau. Taigi šis skaičius yra tikrai 3 kartus 16 kvadrato, plius 9 kartus 16, plius 7. Aš ne padaryti matematikos čia, bet tai nėra 397, tai daug, daug didesnis nei, kad. Be to, mes galėtume turėti 0x ADC, gerai kad tai laikai 16 kvadratu. Arba, jei mes verčiame kad mūsų samprata nuo dešimtųjų, tai 10 kartų 16 kvadratu, plius d laikai 16 ar plius 13 kartų 16. Ir nesijaudinkite, jei jūs neturite įsimintų kad d yra 13, ar kas nors panašaus, ten ne per daug Šių raidžių skaitmenys ir tapsite intuityvus gana greitai. Taigi dar kartą tai yra 10 kartų 16 kvadratu, plius 13 kartų 16, plius 12 kartų 1. Taigi 0x ADC. Taigi, kaip minėjau, kiekvienas grupė iš 4 dvejetainiais skaitmenimis atitinka vieną šešioliktainis skaitmuo, ir todėl tikrai tikrai lengva pakeisti pirmyn ir atgal, tarp hex ir dvejetainės. Jei turite šią ilgą eilutę dvejetainiai skaitmenys, viskas, ką jums reikia padaryti, yra pradėti grupuoti juos tiesiai į kairę kaip grupių 4. Ir tada jūs galite konsoliduoti juos į šešioliktainis skaičius, smarkiai apriboti skaičių skaitmenų turite apdoroti psichiškai. 32 Vietoj 0 "ir 1-ųjų kaip matysime per sekundę, Jums gali būti suteikta galimybė gauti jį žemyn kad tik 8 šešioliktainis skaitmenų, daug tikslesniais. Diagramų keletas skaidres galas padės jums išsiaiškinti šią kartografavimo, nors kartą jums įsiminti gana greitai. Mes eiti per Pvz dabar. Taigi, jei mes turime skaičių, kaip tai, tai tikrai didelis dvejetainis skaičius, ar kas, atrodo, didelis dvejetainis skaičius. Ir priežastis, kodėl aš sakau, kad tai tik so-- tai begemotas, tiesa? Yra tiek daug 0 ųjų ir 1 ten. Bet mes tikriausiai ne tikrai turi prasmės ką šio skaičiaus dydis tikrai yra. Mes neturime jokio supratimo, kas tai atitiktų tam dešimtosios dalies. Ir iš tiesų mes net pamatyti, ką ji atitinka šio dešimtosios dabar. Mes gali būti suteikta tai išreikšti tokiu būdu, kad būtų suteikti mums daugiau informacijos tik apie tai, kaip didelis šis skaičius yra. Taigi eikime į tą konversijos procese. Pirmas dalykas, kurį mes turime reikia padaryti, tai mes norime grupės Šie skaitmenys išėję į grupes 4, pradedant iš dešinės ir darbo į kairę. Yra atsitiktų būti 32 skaitmenų čia, kuris reiškia, kad turime gražus švarus pertrauka 8 grupes 4. Nepamiršti, kad kiekvienos grupės 4 čia unikaliai Atitinka į šešioliktainis skaitmuo. Taigi mes vėl pradėti kurti savo skaičius iš dešinės ir darbo kairėje. Na, kas 1101? Na mes padaryti matematikos iš mūsų galvos, Mes turime 1 į aštuonias vietoje, A 1 į Fours vietoje yra vienas iš Nedideliais 0 vieta, ir į tuos, kurie vietoje 1. Štai 8 + 4 plius 1, kuri mes žinome, kaip 13. Bet mes tikriausiai nebūtų parašyti 13 iš, nes mes dirbame su šešioliktainiu. Turime ją konvertuoti į šešioliktainis ekvivalentas 13, kuris yra d. 0011, gerai, kad tai yra vienas iš 0 aštuoniukių vieta yra vienas iš Fours vietoje 0, A 1 iš Twos vietoje, ir į tuos, kurie vietoje 1. Štai 3. Aš turiu galvoje nuolat daro tai kartą, mes turime čia 9. Ir tada 11, bet tai b, prisiminti. 2, 10-- arba a-- 6 ir 4. Ir taip, kad labai didelė eilutė nuo 0 "ir 1-ųjų viršuje yra daugiau glaustai išreiškė šešioliktainis kaip 0x 46a2b93d. Na, gerai, mes sužinojome nauja kietas įgūdžių, kokia prasmė? Mes galime nenaudokite tai visi laikas, kaip mes ketiname netrukus matysime, mes naudojame šešioliktainis gana programuotojais daug. Nebūtinai už paskirtis daro matematiką su juo, bet todėl, kad daug kartų, atminties adresai mūsų sistemos atstovaujama šešioliktainėje. Tai tikrai glausta būdas išreikšti kitaip sudėtinga, dvejetainiai skaičiai. Ir taip, ir vėl, jums gali not-- jūs tikriausiai nesiruošia daryti jokių matematika Su juo jūs nesate bus padauginus šešioliktainius numerius kartu, ar daro ką nors keistai, kaip kad. Bet tai yra naudinga įgūdžių turėti todėl jūs galite išreikšti ir suprasti atminties adresus ir kitą būdai naudojant duomenis C Aš Doug Lloyd, tai CS50.