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です。