ブログ一覧

2進数と16進数

Old-Contentsからの色あせしない知識、第3弾(2000/05/21)

2進数と16進数

「0」と「1」。コンピュータ自身が唯一理解できる言葉です。

なぜ、「0」と「1」なのか?それは、電気で動いているからです。

「0」と「1」とは、「ある」か「ない」かということです。

つまり電気が流れたら、ある=1、流れなかったら、ない=0、ということなのです。

コンピュータには、「だいたい」とか、「中間」とか、そういった判断は根本的にはできません。

ですから、「0」と「1」の2進数がコンピュータの基礎になるわけです。
(コンピュータの持つ基本的な性能を示す数字のほとんどが「2」の乗数で表されます。)

※ただし、量子コンピュータは「どちらでもない」という状態をとることができます。

コンピュータに理解できる2進数は、それを扱う人間には,とても扱い辛いものです。
そこで登場するのが16進数です。
16とは「2×2×2×2」(2の4乗)です。

10進数     2進数   16進数
  0         0   0
  1         1   1
  2        10   2
  3        11   3
  4       100   4
  5       101   5
  6       110   6
  7       111   7
  8      1000   8
  9      1001   9
 10      1010  0A
 11      1011  0B
 12      1100  0C
 13      1101  0D
 14      1110  0E
 15      1111  0F
 16     10000  10
 17     10001  11
 18     10010  12
 19     10011  13
 20     10100  14
  :         :   :
 32    100000  20
  :         :   :
 64   1000000  40
  :         :   :
128  10000000  80
  :         :   :
253  11111011  FD
254  11111110  FE
255  11111111  FF
256 100000000 100

上の表からわかる様に、10進数に対して、2進数は2の乗数ごとに桁が上がり、16進数は16の倍数で桁が上がります。

2025年08月05日

コンピュータの誕生

Old-Contentsからの色あせしない知識、第2弾(2000/05/21)

コンピュータの誕生


 そもそも「コンピュータ」とは計算を早くするために考え出された道具(計算機)なのです。そういう意味では「そろばん」は、電子式ではありませんが、「日本式計算機の第1号」といえるでしょう。


 また、17世紀にはスコットランドで、計算機の原型ともいえる、数字を書き込んだ「骨木」を組み合わせて計算する道具が作られています。(有名なナピアの骨木です)


 さらに後には、「歯車式の卓上機械式計算機」が発明されましたが、人間の頭脳よりはかなり早く演算できるものの、「記憶」したり「装置」をコントロールする機能といった意味では、人間の能力には、はるかに劣っています。その後「手動式」から「電動式」に改良されましたが、「記憶やコントロールの機能」は持っていませんでした。


 初めて、「記憶やコントロールの機能」を持った計算機を考えたのは、イギリス人のベバッジという人ですが完成はしませんでした。


 今でいう、コンピュータの第1号は、1946年、アメリカのペンシルバニア大学で発明されたENIAC(Electronic Numerical Intergrator And Calculator)です。しかし、これは真空管を1万8800本も使った「電子式計算機」で、大きさは約100平方メートル(畳で約60畳)もありました。


 近年、「トランジスタ」の発明、さらに「IC」(集積回路)が作られ「LSI」が使われるよになって、真空管式のコンピュータに比べて「4分の1」にまで小型化出来るようになり、その演算能力の早さは、真空管式の「1億倍」にまで達しました。(真空管式コンピュータで、4ヶ月もかかる計算が、LSI型コンピュータでは約1秒で出来てしまう)


では、現在のパソコンはこのコンピュータをさらに小型化して生まれたのかというと、そうとは言い切れないのです。では・・・?


 実は、「電卓の進化型」なのです!!
機械式計算機は、LSIやICの出現により、急激に小型化され、計算時間も大幅に短縮された結果、「電子式卓上計算機」として生まれ変わりました。そして、日本の各電卓メーカーは更なる性能アップを求め、アメリカのカリフォルニア州(シリコンバレー)に出かけて行き、新製品の依頼をしたのです。その結果「複数のICを組み合わせたLSI」が完成し、電卓はさらに小型化し、高性能なものになりました。


 そして、日本の電卓メーカーは、電卓用LSIにいろいろな機能を要求しまし、シリコンバレーのLSIメーカーは、次から次ぎへと来る日本メーカーの注文に対して、さまざまなLSIを片っ端から作りその要求に答えました。


 そのような情勢の中で、あるLSIメーカーは、製造コストを下げるために、複雑な専用LSIの開発をやめて、標準化したひとつのロジック素子(演算機能のある一体型電子回路)を開発したのです。その結果、電卓メーカーは、機能の異なる電卓を作るためには、そのための「プログラム」を作ればよくなったのです。


 そのLSIメーカーとは、「インテル社」のことであり、その「ロジック素子」が現在の「パソコン」の原型である「マイコン」のもととなった、「CPU:4004(MCS-4)」なのです。(1971年)


 この、「マイコン」の誕生には、日本の電卓メーカーが、少なからず関与していた(日本人のヒントによりマイコンが誕生した)わけですが、「CPU:4004」は、「スピード」、「構造」、「割り込みが無い」、「処理ビット数」の面から、とてもコンピュータと呼べるモノではなかったのです。その後、インテル社は、8ビット・マイコンの最初のモノとして、「CPU:8080(MCS-8)」を発表しました。(これも、処理スピード等の機能では、まだまだ、満足できるモノではなかったのです。)


 そして、1974年に、1970年代後半の主流の一つともいえる「8080CPU」を開発したのです。これは、「MCS-8」と比べ、機能は飛躍的に向上しました。


 この、「電卓技術の延長線」の中で生まれた、インテル社のマイコン(CPU)に対して、「コンピュータを小型化する努力」の中で生まれたマイコン(CPU)が、「モトローラ社」が開発した同じ8ビット・マイコンである「6800CPU」です。


 1978年当時、8080系、6800系の他に、ザイログ社が8080CPUの機能向上+周辺LSIをも、ひとつのチップ上に集積化した、「Z-80]とうい高級チップを発表し、マイコン界を「あっ」と言わせました。


 産業用の専門であったマイコンはどんなに安くても「数百万円」はしたのですが、「ワンチップ・コンピュータ」がマイコンの仲間入りをしたことによって、1980年代に入り、ホビーの分野にも急激に進出し、個人でも所有するようになり、マイコンが個人ユーザへと普及し、現在の「パソコン」に進化してきたのです。

2025年07月27日

ハッカーとは

Old-Contentsからの色あせしない知識、第1弾(2001/04/08)

ハッカーとは・・・?


 最近のマスコミでは、セキュリティを破ってサーバーや端末に侵入する行為をとらえて「ハック」と呼ぶために、ハッカーという言葉はとにかく悪い印象を与えがちです。しかし本来、ハッカーとは熟練プログラマーやエンジニアを指す言葉であり、そこにはまったく悪意は込められておらず、むしろ尊敬の意を表する言葉でした。


 ハック・ハッカーという言葉が生まれたのは、コンピューター夜明け時代のマサチューセッツ工科大学であるといわれています。英語のHackには、「ジャングルを切り開いて突き進む」という意味があります。すなわち、ハックとは独力で道を切り開いていくことを意味し、一流のアートやエンジニアリングに対する深い探求心を意味しているのです。


 このハックという言葉は、いまでもマサチューセッツ工科大学の伝統となっており、過去の素晴らしいハッカー達の功績と栄誉が讃えられています。マサチューセッツ工科大学ではこれをギャラリーにしており、http://hacks.mit.edu/からアクセスすることが出来ます。


 この正統的なハックに対して、コンピュータに侵入するなどの行為を行う人間のことをクラッカー(cracker)と呼んでいます。またその行為の内容によって、クラッカー(kracker)、イントルーダー、フリーカーなどとさらに細かく区別されることもあります。これらの言葉はマスコミに登場する機会も少なく、アンダーグラウンドな世界でのみ通用するスラングとなっています。


 冒頭で触れたように、最近ではマスコミなどの影響によって、ハッカー=クラッカーというイメージが浸透しつつあります。しかも、これは日本だけの話ではなく、欧米などでもその傾向は高まってきており、これらの区別は非常にあいまいになってきています。しかしUNIXの世界に関していえば、ハッカーは依然として優れたスキルをもった人間に対する尊敬を意味する言葉として通用していますので、勘違いをして恥をかかないようにしてください。


 ちなみにハッカーにもランクがあり、伝統的なハッカーになるとwizard(魔術師/天才的な人間の敬称)などと呼ばれるようになります。また、LinuxやUNIXの等の開発者の中には、demigod(半神/神に近い存在)と呼ばれる人もいます。

2025年07月13日