DOUG LLYOYD:だから16進数、 我々は、他の基地数を必要としているかのように スキームの右? まあ、ほとんどの西洋文化、 あなたはおそらくよく知られているように、 小数system--ベースを使用 数値データを表す10。 私たちは、数字0を持っています 1、2、3、5、6、7,8,9。 そして、我々は表現するために必要がある場合 9よりも高い値、 我々は、これらの数字を組み合わせることができます 場所値の概念を使用して。 だから10のために、我々は1を持っています 0数字が続く数字 私たちは直感的に理解します 私たちがやっていること 我々は乗算しているがあります 10による第1、 次いで10の合計に0を追加します。 コンピュータはかなり何かを 同様に、あなたはおそらく精通しているとして、 バイナリsystem--ベース2と。 違いがそこにいます 唯一の2桁が存在すること 0と1 with--動作するように。 だから私たちの場所値、 代わりに1であることの、 10、百、千、彼らのように 十進法にあるであろう、 ように1つ、2つ、4つ、8個としています。 ここではしかしことです、 特に0年代と1、 我々は、コンピュータ科学者であるしている場合 我々はプログラミングをたくさんやっています またはコンピュータでの作業、行っていました 2進数の多くを見ることができます。 大規模なチェーンで、それらの0と1の 解析することは非常に困難な場合があります。 私達はちょうどの文字列を見ることができません 0と1、必ずしも知っています まさにそれがあります。 しかし、それはできるようにすることが便利です 同じ方法でデータを表現します コンピュータがないこと。 私たちは、この概念を持っています ある16進数、 ベース16の代わりに、ベース10またはベース2。 どちらが私達が16桁を有することを意味します 代わりに、10または2で動作します。 そして、それははるかにです 表現する簡潔な方法 コンピュータシステム上のバイナリ情報、 それははるかに人間が理解できるのです。 だから我々は数字を持っています その後、0〜9、および 我々はまた、これらの余分な6 digits--持って、 B、​​C、D、EおよびF、10を表し、 10、11、12の私たちの考え方、 13、14、15、小数インチ 時には、ところで、あなたもよ 大文字のA Fとしてのを介してこれらを参照してください。 あるFを介して、 方法私はそれを行う傾向にあります。 それはちょうど私の好みです スタイルが、どちらかは結構です、 彼らは両方ともかなり表します ずっと同じこと。 なぜ進クールですか? なぜ我々はこれを使用する必要があります 他の追加の塩基? 我々はすでに2があり、 10は、なぜ我々は16が必要なのでしょうか? ウェル16は、2の累乗であるので 各進数、0からf、 ユニークに対応 発注、またはユニークなアレンジ 4 2進数4ビットの。 だからそういう意味では、我々は表現することができます 非常に長く、複雑な、二進数 で16進数で はるかに簡潔な方法、 情報を失ったりすることなく、 特に面倒な変換を行います これらの数字に。 だから、私は言ったように、 各進数 ユニークに対応 4進数の配置。 だから、バイナリ文字列0000 進数0に対応しています。 0110は、16進数の数字6に対応しています。 1111対応 進数fに。 あなたが見ている場合 このチャート、特に あなたが見ている場合 チャートの左側に、 あなたは既にあります見ることができます ここで曖昧さの問題のビット。 0進数はかなりあります 進0から区別できません、 それが下だという事実以外 進を言う列。 しかし、我々は、おそらく常にしません そこにその列を持っています。 一般的に私たちが表現しているとき 16進数表記に数 明確に区別するために それら進数から、 我々は通常、これらの接頭辞 接頭辞0xで。 0Xは、実際に何を意味します それは人間として私たちにちょうど手掛かりです 私たちが見るしようとしている何それ、 または構文解析を開始することについて、 進数です。 明らかに上位桁、bについて、 10-15に対応するC、D、およびF それはのことをかなり明確なのです それは、16進数です。 そして、実際には、任意の進 その中の文字を持っている数、 おそらくかなり明白です 16進数で。 しかし、まだ、用 明確化のためには、それです に常に良いアイデア たびに、あなたの前に付けます 進として数字を参照してください。 0Xを付けることによって数。 我々ように、バイナリ、 場所値を持っている、と述べました。 一の位があり、2の補数場所、 四つんばいの場所、およびエイト場所。 そして、小数はまた、場所の値を持っています もの、数十、数百、千 我々はすべてのことを思い出します 小学校から。 16進数はnoです ここでは、例外、本当に。 また、代わりの場所値を有するが 10の2の累乗または累乗であること、 彼らは16の累乗です。 だから我々は、この私たちのような番号を参照してください かなり明らかに、それは右、397であることを知っていますか? さて、私たちは次のように番号が表示される場合は、 我々は、これはもう397ではありません知っています。 これは、16進数であります 三番目-九から七。 それは意味し、397ではありません 何か違います、 我々はすべてのように16の力を使用しているので、 私たちの場所値の代わりに、力の 10の。 実際には、場所の値がここだろう 一の位、sixteensの場所で、 二百五十乱雑な場所、 どれの私たちの考え方に対応 場所、十の位、および数百 場所、数が397だった場合。 それは0X 397だから。しかし、私たちは持っています 一の位、sixteens場所、 二百五十乱雑な場所。 または、1である0の場所に16。 第1の電力所、16から16まで。 16場所、256を乗し、 ように、というように、というように。 したがって、この数は、実際に3回16 乗、プラス9回16プラス7。 私はここで数学をしませんでしたが、それはありません 397、それよりはるかに大きく、非常にです。 同様に、私たちは0X ADCを持つことができ、 よく、それは16の二乗倍です。 それとも我々の概念にそれを翻訳する場合 10進数、それは10倍です 16は、プラスD回、乗 16、またはプラス13回16。 あなたは覚えていない場合は心配しないでください そのdは13、またはそのようなものです、 あまりにも多くはありません これらの文字の桁 それはなるだろう かなり迅速に直感的。 だから、再び、これは10倍の16は、乗 13回16、プラス12回1プラス。 だから0X ADC。 だから、私が言ったように、すべての 4進数のグループ シングルに対応 進数、 そしてそれは実際に実際にです 前後に変更するのは簡単 進とバイナリの間。 あなたは、この長い文字列を持っている場合 二進数、あなたがする必要があるすべて それらを右にグループ化開始されます 4のグループとして左へ。 そして、あなたは統合することができます それらの16進数に変換し、 重度の数を制限します あなたが精神的に処理しなければならない数字。 代わりに、32 0と1の、 我々は、第二​​に表示されますように、 あなたはそれを取得することができるかもしれません わずか8桁の16進数、ロット より簡潔な。 チャートのいくつかのスライドバック意志 このマッピングを理解するのに役立ち、 再びあなたはよ、ものの かなり迅速にそれを暗記。 私たちは今、例を行きますよ。 だから我々はこのような番号を持っている場合、 これは本当に大きな進数、 またはと思われるもの 大きなバイナリ数。 そして、その理由私はそれがだと言います ちょうど、それは巨大ですかso--? 0年代、そこに1のように多くがあります。 しかし、我々はおそらくありません 本当に何の意味を持っています この数の大きさは実際にあります。 私たちはどのようなこと任意のアイデアを持っていません 小数点に対応するであろう。 そして、実際には私たちも、何がそれを見ています 今小数にに対応しています。 私たちはすることができるかもしれません ような方法でこれを表現 私たちにいくつかのより多くの情報を与えるだろう この数は約どれだけ大きいです。 それでは、その変換プロセスに行ってみましょう。 我々が必要がある最初の事 行うには、私たちはグループにしたいです グループにこれらの数字アウト 4の、右から始まります そして左に取り組んでいます。 32桁があるように起こります ここで、我々が持っていることを意味します 4の8グループの素敵なきれいな休憩。 各グループのことを覚えておいてください 4ここでは、一意に対応 進数へ。 だから私たちは私たちの構築を再起動します 右からの数、およびワーキング左。 さて1101年は何ですか? さて、私たちは私たちの頭の中で数学を行います、 私たちは1、エイトの場所に1を持っています 四つんばいの場所で、補数で0 場所、および一の位で1。 つまり、8プラス4プラス1です これは私たちが13のように知っているだろう。 しかし、我々は、おそらく、13アウトを記述しないだろう 私たちは16進数で作業しているため。 我々は、16進数に変換する必要があります dは13と同等の、。 0011、よくそれは0です エイト場所、四つんばいの場所で0、 補数の代わりに1、 そして、一の位で1。 それは3です。 私はこれをやり続ける意味します 再び、我々はここで9を持っています。 そして11が、それは、B、リコールです。 2、10--またはA-- 6、および4。 そして、その結果、非常に大規模な文字列 トップの0と1の より簡潔に表現されます 0Xの46a2b93dとして16進数で指定できます。 さて、[OK]を、私たちは新しいことを学びました クールなスキル、ポイントは何ですか? 私たちは、このすべてを使用しない場合があります 時間、私たちはすぐに参照するつもりだとして、 我々は非常に16進数を使用します プログラマとしてたくさん。 必ずしも用 それに数学を行う目的で、 しかし理由多くの時間 私たちのシステムのメモリアドレス 進数で表されます。 それは表現する本当に簡潔な方法です それ以外の場合は面倒、二進数。 だから、再び、あなたがかもしれません not--あなたはおそらくしています 任意の数学をするつもりはありません それを、あなたはそうではありません 乗算になるだろう 一緒に16進数、 またはそのような奇妙な何もして。 しかし、それは持っているのに有用なスキルです あなたが表現し、理解することができます メモリアドレス、および他の C.内のデータを使用する方法 私はダグロイドだけど、これはCS50です。