DOUG LLYOYD: Nii kuuteistkümnendnumbriga, sest kui meil on vaja teise baasi number kava õige? Noh, kõige Lääne kultuuride, Nagu te ilmselt tunnevad, kasuta koma süsteemis endale alus 10 esindama arvandmeid. Meil on numbrid 0, 1, 2, 3, 5, 6, 7,8,9. Ja kui meil on vaja esindada väärtused üle üheksa, saame kombineerida numbrit kasutades mõistet koha väärtust. Nii 10, meil on 1 kohaline järgneb 0 kohaline ja me intuitiivselt mõista et mida me teeme on meil korrutades esimese 1 10, ja seejärel lisades 0 kokku 10. Arvutid midagi päris sarnased, sest sa oled ilmselt kursis, binaarne süsteemis endale baasi 2. Erinevus et oleks et on ainult 2 numbrit töötada with-- 0 ja 1. Ja nii meie koht väärtusi, selle asemel, et ühe, kümne, saja, tuhat, nagu nad oleks detsimaalsüsteem, on üks, kaks, neli, kaheksa, ja nii edasi. Siin on asi küll, Neil 0 s ja 1 s, eriti Kui me seda arvuti teadlased ja me teeme palju programmeerimine või töötavad koos arvutiga, ei kavatse tuleb näha palju kahendsüsteemile. Ja need 0-ja 1-suurte kettide võib olla väga raske sõeluda. Me ei saa lihtsalt vaadata string 0 s ja 1 s ja pruugi teada täpselt, mis see on. Aga see on ikka kasulik, et oleks võimalik Express andmeid samal viisil et arvuti teeb. Meil on see jätab kuueteistkümnendsüsteemi, mis on base 16 asemel alusel 10 või alus 2. Mis tähendab, et meil on 16 numbrit töötada 10 asemel või 2. Ja see on palju ülevaatlik viis väljendada binaarne info arvutisüsteemi see on palju rohkem inimese mõistetav. Nii et meil on numbrit 0 kuni 9 ja seejärel meil on ka need täiendavad kuus digits-- a, b, c, d, e ja f, mis kujutavad 10, meie arusaam 10, 11, 12, 13, 14 ja 15, on koma. Vahel, muide, on sul ka vaata neid läbiva f on kapitaliks, kaudu F, mis on kuidas ma pigem seda teha. See on lihtsalt minu eelistatud stiilis, kuid kas on hea, nad esindavad mõlemad päris palju sama asi. Miks on kuueteistkümnendsüsteemis lahe? Miks on vaja kasutada seda muid täiendavaid baasi? Meil on juba 2 ja 10, miks me vajame 16? Noh 16 on võimu 2, ja nii Iga kuueteistkümnendkoodis, 0 kuni f, vastab unikaalne tellimine, või unikaalse kokkuleppe 4. kahendnumbrist, 4 bitti. Ja nii selles mõttes, saame väljendada väga pikk, keeruline, kahendsüsteemile kuueteistkümnendsüsteemis a palju täpne, kaotamata andmeid või millel teha eriti tülikas konverteerimine neid numbreid. Nii, nagu ma ütlesin, Iga kuueteistkümnendkoodis vastab unikaalne korraldus 4 kahendnumbrist. Nii binaarne jada 0000 vastab kuueteistkümnendkoodis 0. 0110 vastab kuueteistkümnendkoodis 6. Ja 1111 vastab to kuueteistkümnendkoodis f. Kui te vaatate Sellel diagrammil eriti Kui otsite juures vasakul skeem, võite juba näha, seal on natuke ebaselgeks probleem. Decimal 0 on päris palju eristamatu kuueteistkümnendsüsteemis 0, va asjaolu, et see alusel veerus, mis ütleb, kuueteistkümnendsüsteemis. Aga me ilmselt ei ole alati on selles veerus on. Üldiselt, kui me väljendame numbrid heksadesimaalilukua selgelt eristada neid numbritena, me tavaliselt eesliide neid eesliitega 0x. 0x tähendab midagi tegelikult, see on lihtsalt aimugi meile inimestele et see, mida me parasjagu näha, või algamas parsimisvea, on kuueteistkümnendsüsteemis number. Ilmselt Suurematel numbrit a, b, c, d ja f, mis vastavad 10-15 see on üsna üheselt mõistetav, et on see on kuueteistkümnendsüsteemis number. Ja tegelikult, ükskõik kuueteistkümnendsüsteemis number, mis on tähed seda, on ilmselt üsna selge kuueteistkümnendsüsteemist. Aga ikkagi, et Selguse huvides on alati hea mõte eesliide iga kord, kui viidata kohaline kuueteistkümnendsüsteemist number prefixing 0x. Niisiis, binaarsed, nagu me ütles, on koht väärtusi. Seal on need kohas, kahed koht, püksid kohas, ja kaheksad koht. Ja koma on ka koht, väärtuste need, kümneid, sadu ja tuhandeid et me kõik mäletate alates algkool. Ja kuueteistkümnendsüsteemis ole Erandiks, tõesti. Samuti on koht väärtusi vaid olemise volitused 2 või volituste 10, nad volitusi 16. Nii näeme mitmeid niimoodi me päris selgelt teada, et see on 397, eks? Noh, kui me näeme mitmeid niimoodi, me teame, et see ei ole 397 enam. See on kuueteistkümnendsüsteemis number kolm-9-7. See ei ole 397, see tähendab, midagi, sest me õigusi kasutades 16 kõik Meie koht väärtuste asemel volitused 10.. Tegelikult koha väärtused siin oleks olema need paigas, sixteens koht, ja kakssada viiskümmend sixes koht, mis vastavad meie idee ones koht, kümned koht ja sadu koht, kui number oli 397. Aga kuna see on 0x 397, meil on ones koht, sixteens koht, ja kakssada viiskümmend sixes koht. Või 16 kuni 0 koht, mis on 1. A 16 ja esimese power koht, 16. A 16 ja ruuduline koht, 256, ja nii edasi, ja nii edasi, ja nii edasi. Nii et see number on tõesti 3 korda 16 ruudus pluss 9 korda 16 pluss 7. Ma ei teinud matemaatika siin, kuid see ei ole 397, see on palju, palju suurem kui see. Samamoodi võiksime olla 0x ADC, ka see on korda 16 ruudus. Või kui me tõlkida, et meie arusaam peale koma numbrid, mis on 10 korda 16 ruuduline, pluss d korda 16, või pluss 13 korda 16. Ja ärge muretsege, kui te ei ole meelde et d on 13, või midagi sellist, seal ei ole liiga palju Nende kirja numbrit ja see sinust intuitiivne päris kiiresti. Nii ka sellel on 10 korda 16 ruuduline, pluss 13 korda 16 pluss 12 korda 1. Nii 0x adc. Nii, nagu ma ütlesin, iga rühm 4 kahendnumbrist vastab ühele kuueteistkümnendkoodis, ja nii see on tegelikult väga lihtne muuta edasi-tagasi vahel hex ja binaarne. Kui teil on selle pika stringi kahendnumbrist, kõik mida sa pead tegema on alustada rühmitades need õige vasakule kui rühmad 4. Ja siis saate tugevdada need kuuteistkümnendnumbriga, Raske arvu piiramine numbrit teil töödelda vaimselt. Selle asemel, et 32 ​​0 s ja 1 s, nagu me näeme teise, sa võiksid saada see maha lihtsalt 8 kuueteistkümnendarvudega, palju leebem. Graafikud mõned slaidid selg aitab teil aru saada, see kaardistamine, kuigi jällegi saate meeles pidada päris kiiresti. Me läheme läbi näiteks praegu. Nii et kui meil on mitmeid, nagu see, see on tõesti suur kahendarvu või mis tundub olevat suur binaarne number. Ja põhjus, miks ma ütlen, et see on lihtsalt so-- see Behemoth, eks? Seal on nii palju 0-ja 1 on seal. Aga me ilmselt ei tõesti on tunne, mida suurusjärku see number tegelikult on. Meil ei ole mingit ettekujutust, mida ta vastaks kohaga. Ja tegelikult me ​​isegi ei vaata, mida ta vastab kümnendsüsteemis kohe. Me võiksid väljendab seda viisil, mis annaks meile rohkem infot umbes lihtsalt, kui suur see number on. Nii lähme selle protsessi tulemus. Esimene asi, mida me vajame tegema, on me tahame grupp Nende numbrite viidud rühmad 4., alustades paremalt ja töötab vasakule. Seal juhtub olema 32 numbrit siin, mis tähendab, et meil kena puhas vaheaja 8 rühmad 4. Pea meeles, et iga grupp 4 siin, vastab üheselt kuni kuueteistkümnendkoodis. Nii et me hakkame jälle hoone meie number paremalt ja töötamist vasakule. Noh, mis on 1101? Noh me ei matemaatikat läbi meie peas, meil 1 kaheksad koht, 1 on püksid kohas, 0 kahed koht ja 1 ones koht. See on 8 + 4 + 1, mida me teame, sest 13. Aga me ilmselt ei kirjuta 13 välja, sest me töötame koos kuueteistkümnendsüsteemis. Me peame muutma selle kuueteistkümnendnumbrile ekvivalent 13, mis on d. 0011, ka see on 0. kaheksad koht, 0. püksid koht, 1: kahed koht, ja 1 ones koht. See on 3. Ma mõtlen hoida seda teed uuesti, meil on siin 9. Ja siis 11, aga see on b, meenutada. 2, 10-- või a-- 6 ja 4. Ja nii, et väga suur string 0-ja 1-top on rohkem lühidalt väljendatud kuueteistkümnendsüsteemis kui 0x 46a2b93d. Noh, OK, me oleme õppinud uut lahe oskus, mis mõtet on? Me ei pruugi seda kasutada kõiki aega, kui me läheme varsti näha, Me kasutame kuueteistkümnendsüsteemis üsna palju nagu programmeerijad. Mitte tingimata eesmärgil teeme matemaatika sellega, aga kuna palju kordi mäluaadressid meie süsteemis Esindatud on kuueteistkümnendsüsteemis. See on tõesti lühike viis väljendada muidu tülikas, kahendsüsteemile. Ja nii ka nüüd, siis võib Mitte-- oled ilmselt ei kavatse teha mingeid matemaatika Mis, sa ei ole saab olema korrutades kuuteistkümnendnumbriga kokku või tee midagi sellist imelikku. Aga see on kasulik oskus on nii et saate väljendada ja mõista mäluaadressid ja muu kasutamise võimaluste kohta andmeid C. Ma olen Doug Lloyd, see on CS50.