プログラミングとコンピュータ しくみと基本がよくわかる!読んでみた。

[記事公開日]2018/02/13

[最終更新日]2021/10/31

プログラミングの本とか読んでも、よくわからない。
あまり理解できない。とかあります。

この本、子ども向けですが、大人読んでもためになります。(たぶん)
図解とイラストで解説。
また、本のサイズは、大きいので、字など見やすいです。
(縦 28.5cm x 横21.8 cm)

プログラミング系の本とかだと字が小さいので、大人の方が読むと、字がみずらいとかあります。
本はカラー印刷です。ひらがなもふってあります。

プログラミングとコンピュータ しくみと基本がよくわかる! (楽しい調べ学習シリーズ) 単行本 – 2017/11/17
大岩 元 (監修)

目次
プログラミングとコンピュータ しくみと基本がよくわかる!読んでみた。
第1章 プログラミングってなに?
第2章 コンピュータとプログラミング
第3章 情報とプログラミング

 


 
パブロフくんと学ぶはじめてのプログラミング〈第2版〉 単行本 – 2021/10/27
よせだあつこ (著)
プログラミングで重要なことは?

パブロフくんと学ぶはじめてのプログラミング〈第2版〉 単行本 – 2021/10/27
よせだあつこ (著)

 


 

プログラミング言語大全 (日本語) 単行本(ソフトカバー) – 2020/4/18

自分のための言語を探そう?
100以上のプログラミング言語や処理系、関連言語を幅広く解説。C、Java、Python、PHP、Ruby、JavaScript…主要言語はもちろんマイナー言語まで収録。初心者にも経験者にも楽しい一冊です。

 


 

マンガでわかる! 10才までに遊んできたえるプログラミング脳 単行本 – 2019/9/15

 


 

先生のための「プログラミング的思考」の教え方  小学校5年算数編 (OnDeck Books(NextPublishing)) (日本語) オンデマンド (ペーパーバック) – 2020/2/21

空飛ぶプログラム~ドローンの自動操縦で学ぶプログラミングの基礎 (日本語) 単行本(ソフトカバー) – 2020/2/22

 


 

【改訂5版】図解でよくわかる ネットワークの重要用語解説 (日本語) 単行本(ソフトカバー) – 2020/4/16

 


 

文系でも転職・副業で稼げるAIプログラミングが最速で学べる! (日本語) 単行本(ソフトカバー) – 2020/1/22

プログラミング言語「Python」が21日で身につく!
未経験者でも安心! 複雑な公式や専門用語は最小限に
わからないことがあったら著者に無料質問! 「特設サイト」との連動

※Amazonギフト券1000円分がもらえる特別キャンペーンも実施中!
詳しくは「ひびしんAIプログラミング」で検索してください!

文系でも転職・副業で稼げるAIプログラミングが最速で学べる! (日本語) 単行本(ソフトカバー) – 2020/1/22

 


 

プログラムすごろく アベベのぼうけん おどろきの上巻 単行本 – 2019/9/26

必須化! 小学校のプログラミング学習 成功する全体計画&授業づくり 単行本 – 2019/12/18

できるキッズ 子どもと学ぶ Scratch3 プログラミング入門 単行本(ソフトカバー) – 2019/12/6

すみっコぐらし学習ドリル 小学1・2年 はじめてのプログラミングドリル 単行本 – 2019/11/15

ソフィア ロボット・レースに参戦 (プログラミングガールズ!) 単行本(ソフトカバー) – 2019/11/14

Unity 3D/2Dゲーム開発実践入門 Unity 2019対応版 単行本 – 2019/10/30

できるたのしくやりきるScratch3子どもプログラミング入門 単行本(ソフトカバー) – 2019/10/23

 


 

プログラミングとコンピュータ しくみと基本がよくわかる! (楽しい調べ学習シリーズ) 単行本 – 2017/11/18

プログラミングとは何かをイラストや図解でやさしく解説するとともに、コンピュータが動くしくみやデジタル情報の基礎知識も紹介。

小学校でプログラミング教育が始まります! 「プログラミング」とはコンピュータを動かすための命令をまとめた手順書をつくること。その基本をイラストや図解でやさしく解説するとともに、コンピュータが動くしくみや2進法であるデジタル情報の基礎知識も紹介。なぜコンピュータが動くのかがわかります。

【第1章】プログラミングってなに?「プログラム」とは、なんだろう?/くらべてみよう、人間とコンピュータ/命令どおりに動かそう(順次実行、くり返し、条件分岐など)/プログラミング言語/子どもの向けのプログラミング言語 ほか
【第2章】コンピュータとプログラミングコンピュータやロボットが動くしくみ/メモリのしくみとプログラム/コンピュータが命令を実行するしくみ、ほか
【第3章】情報とプログラミング、情報ってなに?/ビットってなに?/2進数ってなに?/現在の情報のしくみ ほか

 


 

かんたんパソコン入門 [改訂7版] 単行本(ソフトカバー) – 2019/1/19

内容紹介
パソコンの中がどうなっているか、よくわかります

人気の「かんたんパソコン入門」の最新版です。
パソコンの基本的なしくみ、パソコンを構成するパーツの種類と機能、OSやソフトウェアの役割、
インターネットの知識など、パソコンとその周辺のさまざまなテクノロジについて、わかりやすく解説します。
趣味でパソコンを使う人はもちろん、コンピューターやITについて本格的に勉強するための
最初の一冊としてもおすすめできます。

 


 

情報処理エンジニア職業ガイド―プログラマ・ITエンジニア・SEのためのキャリアデザイン 単行本 – 2019/8/1

 


 

これからはじめるVue.js実践入門 単行本 – 2019/8/22

 


 

ネットワークはなぜつながるのか 第2版 知っておきたいTCP/IP、LAN、光ファイバの基礎知識 単行本(ソフトカバー) – 2007/4/12

 


 

これ1冊でできる! ラズベリー・パイ 超入門 改訂第5版 Raspberry Pi 1+/2/3(B / B+)/Zero/Zero W対応 単行本 – 2018/11/22

 


 

小学校の先生のための Why!?プログラミング 授業活用ガイド 単行本 – 2018/12/6

内容紹介
人気プログラミング番組『Why!?プログラミング』を活用して、よりよいプログラミングの授業を実施するためのガイド本です。

本書は、さまざまな教科の中で実際にプログラミング学習を行っている全国の小学校の実践事例を、低学年・中学年・高学年に分類して紹介します。
各事例では、パソコンやネット環境、準備内容、先生による指導案や気付き、評価ポイントを具体的に提示。
さらに、授業を参観した監修者によるポイント(実施に当たって押さえるべき点、気を付けるべき点、発展させるためのヒントなど)も掲載しています。

 


 

C言語本格入門 ~基礎知識からコンピュータの本質まで 単行本(ソフトカバー) – 2018/3/9

 


 

人工知能と友だちになれる?: もし、隣の席の子がロボットだったら…マンガでわかるAIと生きる未来 単行本 – 2018/6/1

 


 

統計ってなんの役に立つの?: 数・表・グラフを自在に使ってビッグデータ時代を生き抜く 単行本 – 2018/5/15

 


 

プログラミングでなにができる?: ゲーム・ロボット・AR・アプリ・Webサイト……新時代のモノづくりを体験 (子供の科学★ミライサイエンス) 単行本 – 2018/4/10

 


 

コンピューターってどんなしくみ?: デジタルテクノロジーやインターネットの世界を超図解 単行本 – 2018/4/10

 


 

Pythonスタートブック [増補改訂版] 大型本 – 2018/4/12

 


 

世界一わかりやすい! プログラミングのしくみ 単行本 – 2018/3/24

 


 

教養としてのプログラミング的思考 (サイエンス・アイ新書) 新書 – 2018/3/16

 


 

たった1日で基本が身に付く! Ruby on Rails 超入門 大型本 – 2018/3/9

 


 

PHPしっかり入門教室 使える力が身につく、仕組みからわかる。 大型本 – 2018/3/7

 


 

今こそホンキで覚えるPython[Python3対応] 単行本 – 2018/3/1

 


 

日本でいちばんわかりやすいプログラミングのドリル 単行本 – 2018/2/25

 


 

独学プログラマー Python言語の基本から仕事のやり方まで 単行本 – 2018/2/23

 


 

かんたん Python (プログミングの教科書) 単行本(ソフトカバー) – 2018/2/24

 


 

絵解きでわかる iPhoneアプリ開発超入門 単行本 – 2018/2/23

 


 

CSSフレームワーク Bootstrap入門 単行本 – 2018/2/22

 


 

マンガと図解でスッキリわかる プログラミングのしくみ 単行本(ソフトカバー) – 2018/2/19

 


 

こどもプログラミングドリル Scratch(スクラッチ)編 大型本 – 2018/2/17

 


 

Pythonの絵本 Pythonを楽しく学ぶ9つの扉 単行本 – 2018/2/16

 


 

プログラミング教育が変える子どもの未来 AIの時代を生きるために親が知っておきたい4つのこと 単行本 – 2018/2/15

 


 

小中学生からはじめるプログラミングの本 2019年版 (日経BPパソコンベストムック) ムック – 2019/2/15

 


 

サイバーエージェント公式 こどもプログラミング: 超入門 Scratchでつくろう!迷路ゲーム 単行本 – 2018/2/14

 


 

3ステップでしっかり学ぶ Ruby入門 大型本 – 2018/1/26

 


 

プログラマーとお仕事をするということ 単行本 – 2018/1/24

 


 

たった2日でマスターできるiPhoneアプリ開発集中講座 Xcode 10 Swift 4.2対応 単行本 – 2018/10/22

内容紹介
本書が対象とする方

・プログラムを書いたことはないけれど、iPhoneアプリを作ってみたい方
・iPhoneアプリをよく利用していて、自分でも作ってみたいと思った方
・中高生、大学生でiPhoneアプリ開発を学んでみたい方
・シルバー世代や中高年の方で再学習を実施したい方
・企業で入社前研修や企業導入研修での教材を検討している方
そんなiPhoneアプリを作ってみたい、すべての初心者が対象です。
アプリを作ることを「開発」するともいいます。開発といっても「難しいことをする! 」と身構える必要はありません。プログラミングを楽しみながら、リラックスして読み進めてください。

 


 

詳細! Swift iPhoneアプリ開発入門ノート iOS12 + Xcode 10対応 単行本 – 2018/11/3

 


 

絶対に挫折しないiPhoneアプリ開発「超」入門 第7版 【Xcode 10 & iOS 12】 完全対応 (Informatics&IDEA) 単行本 – 2018/11/22

 


 

授業で出来るプログラミング学習大好き入門 単行本 – 2018/12/18

 


 

プログラミングとコンピュータ しくみと基本がよくわかる! (楽しい調べ学習シリーズ) 単行本 – 2017/11/17
大岩 元 (監修)

プログラミングとコンピュータ しくみと基本がよくわかる!読んでみた。

「プログラム」って、なんだろう?
ロボットを命令通りに動かすには?
コンピュータと電卓は、なにがちがうの?
コンピュータの計算力は、どんなところで使われているの?
ビットって何?
音や画像は、どうやって伝えるの?

など解説。

人類は昔から、人間のように考え、動くモノを作りだそうとしていました。
そして「コンピュータ」が作られて、人間がそれまで、やってきた仕事をコンピュータに代わりにしてもらったり、ゲームができたり、遠くの人と話しができたり、するようなことができるようになったりしました。

私達は、コンピュータなしてでは生活できない社会を作ってしまいました。
30年前は、銀行で、お金を預けたり引き出したりするときは、窓口にいる人間にやってもらっていました。

今は、そうした仕事はATMと呼ばれるコンピュータが中に入って機械がするようになりました。

コンピュータに仕事をさせるプログラミングを、みんなが学ぶ必要がでてきました。

もくじは、このような感じです。
第1章から第3章まで。

目次
第1章 プログラミングってなに?
第2章 コンピュータとプログラミング
第3章 情報とプログラミング


content

 


 

プログラミングとコンピュータ しくみと基本がよくわかる! (楽しい調べ学習シリーズ) 単行本 – 2017/11/17
大岩 元 (監修)

 


 

第1章 プログラミングってなに?

プログラムとは、なんだろう?
いろいろなものに使われているコンピュータ


program

スマートフォン
ゲーム機
洗濯機
自動車
電子レンジ
炊飯器

コンピュータは、自分ひとりで動くことができません。
命令されたことしかできないのです。

プログラミングは手順書を作ること
プログラムは人間が作って、コンピュータに覚えこませる必要があります。

このプログラムを作ることをプログラミングといいます。

コンピュータにわかる言葉はプログラミング言語です。
コンピュータは人間の言葉はわかりません。

コンピュータにプログラミング言語で命令すると、答えてくれます。

 


 
見つけよう、身の回りの、いろいろな手順

私達の普段の行動や身の回りにも、よく見ると手順が隠れています。

お使いにいく手順
①買ってくる物をメモする。
②お店までの道順を確認する。
③お店まで歩く。
④買う品物がある売り場にいく。
⑤商品をカゴに入れる。
⑥代金をレジで支払う。
⑦家に持ち帰る。


shopping

手順書の作り方

長く複雑な手順も、分解すると、同じようなことをしています。
手順(プログラム)を作るときには、3つの手順が重要です。

①順次実行
上から順番に実行すること。

②くり返し
「歩きつづける」「材料を似つづける」など、ある命令を何度もくり返し実行すること。

③条件分岐
「もし材料が煮えたら、調味料を入れる」
「もし15分たったら、火を止める」のように、条件が合っているか、そうではないかで、やることを変えること。


program

 


 

くらべてみよう人間とコンピュータ1

速く正確に計算ができるコンピュータ
コンピュータという言葉は、もともと研究所や会社で様々な計算をする「計算手」と呼ばれる職業についている人のことでした。
今ではおもに、電気で動く電子計算機のことをコンピュータと言います。

コンピュータは、とても速く正解に計算するものを表す言葉なのです。

日本にあるスーパーコンピュータ「京」
1秒間に1京回の計算ができます。

「京」は「万」や「億」と同じような数の単位ですが、
1のあとに0が16個も続く大きな数です。

とてもつなく速いコンピュータ京

地球上の全人口70億人全員が、1秒間に1回のペースで計算を続け、
役17日間かけて、ようやく1京回の計算ができます。

スーパーコンピュータ「京」は、この計算を、たった1秒でやってのけることができるのです。

私達が普段使うパソコンでも、1秒間に1000億回程度の計算ができます。

コンピュータは多く記憶できる。
コンピュータは計算するとき、途中の結果を忘れないように「メモリ」または「ストレージ」と呼ばれる装置に保存します。

私達が計算に使う「メモ」や「ノート」のようなものです。

では、このメモリやストレージに、どれくらい文字を書き込めるのでしょうか。

これらの装置に書き込める文字の量には、
「ギガバイトGB」や「テラバイトTB」という単位が使われます。

1ギガバイトは半角英数字(1文字バイト)で10億文字ぐらい。
1テラバイトは1兆文字ぐらいです。

コンピュータは、ものすごい量の文字や数字を記憶することができるのです。

メモリとストレージ
解説


memory

 


 

くらべてみよう人間とコンピュータ2
決められたことしかできないコンピュータ

コンピュータは命令されてないことはできません。

突然の故障や予想もしてないことが起こると、コンピュータは対応できません。

ひらめきや独創性がないコンピュータ
コンピュータは、独自のアイデアを思いつくことができないのです。

しかし最近では、大量のお手本と、それを組み合わせる規則を決めてプログラムにして、
コンピュータで音楽や絵を作ることができるようになりました。
これはAI、人工知能と呼ばれる技術ですが、そのプログラムを作るのは人間なのです。

このように、人間とコンピュータは、それぞれ得意なことが違います。

 


 

命令通りに動かそう1

ここでプログラミングの解説
実際にコンピュータを使うわけではありません。
このロボットに命令をさせてみます。

順次実行
命令を順番に実行します。
1つの仕事を小さな命令に分解し、分解した命令を順番に並べたものがプログラムの基本形になります。

繰り返し
順次実行などすると、命令が多くなります。
くり返しを使えばプログラムが短くなります。
コンピュータは「くり返す」ことが得意なのです。
プログラムが読みやすいなります。

 


 

命令通りに動かそう2
条件分岐
「くり返し」を使うことで、このロボットは自動で動けるようになりました。

けれども、決められた動きをするだけで、複雑なことはできません。

まわりをよく観察して
変化があったら行動を変えることができればいいです。
これを「条件分岐」といいます。

条件分岐を使うことで、ロボットに賢い判断をさせることができます。

もっと複雑なプログラム
ここまでに出てきた
「順次実行」、「くり返し」、「条件分岐」を組み合わせると、もっと複雑なことを命令できるようになります。

重要なのは、複雑な命令も
「順次実行」、「くり返し」、「条件分岐」の3つを使うと、すっきり整理することができます。


robot

 


 

いろいろなプログラム1
プログラミング言語
コンピュータに働いてもらうには、プログラムを作って命令しなければなりません。
しかし、コンピュータは人間の言葉を理解することが、できません。

コンピュータが理解できる言葉を「プログラミング言語」といいます。

プログラミング言語は世界中に何百種類から、何千種類もあると言われています。

なぜ、こんなに多くの種類があるのでしょうか?
それは
「話しやすく、書きやすいけど、全部の命令が終わるまでに時間がかかる」
とか
「話しにくく、書きにくいけど、命令が終わるまで速い」
「ある特定のコンピュータにしか通じない」
など、
プログラミング言語ごとに特徴があるからです。

 


 

3ステップでしっかり学ぶ Ruby入門 大型本 – 2018/1/26

 


 

いちばんやさしい Python入門教室 単行本 – 2017/4/8
大澤 文孝 (著)

 


 

たった1日で基本が身に付く! Java 超入門 大型本 – 2017/6/15

 


 

たった1日で基本が身に付く! JavaScript 超入門 大型本 – 2017/6/15

 


 

基礎からしっかり学ぶC++の教科書 C++14対応 単行本 – 2017/2/16

 


 

基礎からしっかり学ぶC#の教科書 単行本 – 2017/11/9

 


 

いちばんやさしいJavaScriptの教本 第2版 ECMAScript 2017(ES8)対応 人気講師が教えるWebプログラミング入門 (「いちばんやさしい教本」シリーズ) 単行本(ソフトカバー) – 2019/3/22

 


 

知識ゼロからはじめる ゆっくり・ていねいJavaScript ES6対応 単行本 – 2019/1/22

 


 

確かな力が身につくJavaScript「超」入門 (確かな力が身につく「超」入門シリーズ) 単行本 – 2015/10/30

 


 

きちんとわかる! JavaScript とことん入門 大型本 – 2017/6/7

 


 

ちゃんと使える力を身につける JavaScriptのきほんのきほん 単行本(ソフトカバー) – 2017/11/21

 


 

本当によくわかるJavaScriptの教科書 はじめての人も、挫折した人も、基礎力が必ず身に付く 単行本 – 2018/6/8

 


 

スラスラ読める JavaScript ふりがなプログラミング (ふりがなプログラミングシリーズ) 単行本(ソフトカバー) – 2018/6/22

 


 

スラスラ読める Pythonふりがなプログラミング (ふりがなプログラミングシリーズ) 単行本(ソフトカバー) – 2018/6/22

 


 

スラスラ読める Rubyふりがなプログラミング (ふりがなプログラミングシリーズ) 単行本(ソフトカバー) – 2019/3/15

 


 

ピングーがスマホで動く! 楽しく学べるプログラミング (Mart Educational BOOKS Vol. 1) 単行本 – 2019/7/30

 


 

いちばんやさしい PHP の教本 第2版 人気講師が教える実践 Web プログラミング (「いちばんやさしい教本」) 単行本(ソフトカバー) – 2017/5/25

 


 

PHP7+MariaDB/MySQLマスターブック 単行本(ソフトカバー) – 2018/1/30

 


 

プログラミング言語を使ってできること

私達の身の回りで普段使われている多くの物がプログラミング言語で作られています。
これらは
ソフトウェア(ソフト)
アプリケーション(アプリ)
などと言います。

プログラミング言語で作れている身近なもの
Webアプリ
GoogleChrome
Internet Explorerなど
Webブラウザで動かすことができるアプリです。

インターネットで動画を見たり、音楽を聴いたり
YouTubeやAmazonなどもWebアプリです。

デスクトップアプリ
コンピュータのメモリに書き込んで利用するアプリケーションソフト
WordやExcelなどアプリがあります。

スマートフォンアプリ
スマートフォン上で動くアプリです。

組みこみ用、制御用ソフト
炊飯器や、洗濯機、電子レンジなどの中で動いているソフトウェアです。

 


 

いろいろなプログラム2

子ども向けのプログラミング言語

Scratch
コンピュータの画面上でブロックを組み合わせてプログラムを作ります。
https://scratch.mit.edu

プログラミン
ブロックを組み合わせてプログラムを作ります。
http://www.mext.go.jp/programin/

コードモンキー
CofeeScriptというプログラミング言語でコードを書いて動かすことができます。

https://codemonkey.jp

キュベット
プリモトイズ キュベット プレイセット 【正規代理店品】
木製の箱型ロボットをプログラムのでコントロールすることで、プログラミングの基本を学べるツールです。

 


 

いろいろなプログラム3

よく使われるプログラミング言語

上級者向け万能選手
Java
大学の研究所で使われているような大型コンピュータから家庭で使われているパソコン、スマートフォン、電子レンジ、テレビ、家電製品まで、ありとあらゆる場所で使われています。

Webアプリケーション、ゲームソフト、なんでも作れます。

プログラミング言語のお母さん
C
「C」は、1972年、アメリカのAT&Tという電話会社の研究所で作られたプログラミング言語です。もともとB言語というものがあり、それを改良して作られたのが、このC。
ずいぶん昔からあるコンピュータをすばやく動かすプログラムが作れることなどの理由で世界中で使われています。
コンピュータで、できる仕事は、ほとんど、Cでやらせることができます。
そのため、はじめてのプログラミング言語として学ぶ人が多い言語でした。

しかし、現在では、簡単にプログラミングができる言語が多くなり、初心者が最初に、学ぶ言語ではなくなりつつあります。
またCは、古い言語なので、他のプログラミング言語にも影響をあたえ、Cによく似た多くのプログラミング言語が生まれました。

Webにかかせない
JavaScript
Webブラウザで動くWebアプリを作るときに、よく使われています。
インターネットの情報を見るWebブラウザが多くありますが、全てのブラウザで動くプログラミング言語はJavaScriptだけです。

簡単で人気の
Python
プログラムの書き方が簡単で少ない文字数で書ける特徴があります。
最近ではAI(人工知能)の研究でも使われています。

 


 

コンピュータに何、仕事をしてもらう時は、「プログラム」を作る必要があります。
しかし、プログラムを作る前に、やらなければいけないことがあります。

まず、仕事の内容をしっかり観察して、理解することです。
次に、仕事を細かな命令に分解する必要があります。

そして、「順次実行」、「くり返し」、「条件分岐」を使って、なるべく短く、無駄のない手順書を作り。
その手順書をもとにプログラムを作るのです。

つまり、「 観察する力」「論理立てて考える力」「表現する力」が重要なのです。

 


 

第2章 コンピュータとプログラミング

コンピュータやロボットが動く仕組み


computer

コンピュータを動かす3つの部分

コンピュータはどのようにして動いているのでしょうか。
大きく3つの部分に分けることができます。
CPU
メモリ
入出力装置

CPUは「中央演算処理装置」ともいい、考えることを担当する装置です。
考えると言っても、やっていることは、ひたすら「計算」することです。

メモリに書き込まれたプログラムから命令を読み取り、命令にしたがって計算をしていきます。

メモリはプログラムや文章をや画像のような情報(データ)を記憶しておくための装置です。
コンピュータがやったことを忘れないように、計算の結果を書き溜めておくメモ帳のようなもの。

CPUとメモリ


memory

 


 
コンピュータは、人間の言葉や身振りを理解できません。

そこで人間とコンピュータの間に立って、言いたいことや、聞きたいことを、わかりやすく伝えてくれる装置が必要になります。
人間からやってもらいたいことや、記憶してもらいことを伝えるための装置を「入力装置」と言います。

コンピュータから人間に見せたいことや聞かせたいこと、計算した結果などを伝える装置を「出力装置」と言います。


apparatus

 


 

コンピュータと電卓は何が違うの?

コンピュータが動く仕組み
コンピュータの中で、もっとも重要な装置は、「CPU」と「メモリ」です。
この2つがあれば、コンピュータとして動きます。

CPUとメモリを何本かの電線で結びます。
CPUは、この電線を使ってメモリに書かれている情報を読み取ります。
またCPUがメモリに情報を書きこむこともあります。

CPUとメモリを結ぶ電線を「バス」と言います。
コンピュータで1+2を計算する場合は
CPUはメモリに書かれたプログラム(命令)を順番に読み取って計算をします。
そして、忘れないように計算結果をメモリに書き込みます。


cpu

 


 

コンピュータのすごいところ
メモリに書き込まれたプログラムを入れ替えてしまえば、コンピュータは全く違う仕事ができます。
例えばメモリに
ゲームのプログラム
ロボットのプログラム
スマートフォンのプログラム
など入れるとそのように動きます。

CPUとメモリという同じ組み合わなのに、プログラムを入れかえるだけでコンピュータは、あらゆる物に変身します。

これが、世界中でコンピュータが使われる理由なのです。


program


computer

 


 

メモリの仕組みとプログラム
電圧の高低で記憶される情報

豆電球を電池に繋げると、豆電球と電池の間に電気が流れて光ます。

電気を流す力の強さを「電圧」といい。
電圧はマイナス極を基準に計ります。

電池の電圧ならば、マイナス極を基準にして、プラス極までを計り、
「1.5Vボルト」などといいます。

電圧の高低は、豆電球の明るさや電圧計で調べることができます。

メモリは、この電圧の高低を使って、情報を記憶しています。


voltage

 


 

メモリの構造
パソコンのメモリを見ると、基盤の上に黒くて平らな部品がのっています。
黒い部分はメモリの本体を守るための「パッケージ」です。

パッケージを剥がすと、中に金属片があります。
これがメモリの本体です。

この金属片には数十もの部品や配線が組み込まれていて、模様のように見えます。
この区画の中で1番小さい物を「セル」といいます。


cell

 


 

メモリとプログラム

メモリは何か記憶したいことがあると、
大量にあるセルの一部の電圧を高くしたり、低くしたりすることで記憶します。

例えば、並んでいる4つのセルの電圧が「低低低高」なら、数字の「1」を表す。
「高高高高」だったら「15」を表す。などのように、コンピュータなら、わかる暗号して記憶しておくのです。

ただし、コンピュータは感じなど読めないので、普通は電圧の高い状態を「1」、低い状態を「0」で表現し、
「低低低高」ならば「0001」と記憶させます。

コンピュータは、このように、
「0」と「1」の2つの文字しか使えないのです。

この表現を「2進表現」といい、この言葉でないと、考えたり、覚えたりすることができません。

コンピュータが直接理解できる特殊な言葉を「マシン語」といいます。

そのため、コンピュータに仕事をしてもらうためには、命令をマシン語に置き換えてメモリに書きこまないといけないのです。


memory

 


 

コンピュータが命令を実行する仕組み

CPUの構造
コンピュータの中で考える部分を担当するのがCPUです。
CPUにも、いろいろな形があります。

CPUは動作中に100度近い温度になることがあるため、パッケージには固くて熱に強いセラミックがよく使われています。


cpu

CPUのしくみ
とても複雑なCPUですが、大きく分けると2つの部分でできています。
1つは「制御部」もう1つは「演算部」

制御部ではメモリから命令を読み取り、その内容をしたがって情報を演算部に送ったり、他の装置の動きを調整したりします。

また制御部には「レジスタ」と呼ばれる装置がいくつもあり、メモリから読み取った命令や計算計算、CPUの中の状態などを一時的に記憶しています。
レジスタにも種類があり、
とくに「プログラムカウンタ」というレジスタは、
「次にメモリの、どの部分を読み込まなければいけないのか」という情報を記憶しています。

制御部はプログラムカウンタの情報をもとに、メモリからプログラムを呼び出します。

演算部は、ひたすら計算をします。
レジスタやメモリに書き込まれたデータを足し合わせるような、普通の計算以外にも、つなぎ合わせたり、切り取ったりするような処理もします。


cpu

 


 

コンピュータが命令を実行するしくみ2

電卓が計算するようす
演算部
制御部には、どの計算を実行するのかを指定する「命令レジスタ」

数値を記憶する「数値レジスタ(レジスタ1とレジスタ2)」があります。

電卓で、「33+4」を計算する場合は、キーパッドの「3」を2回押すと、レジスタ1に数字の「33」が入り、それがディスプレイに表示されます。

次に「+」を押すと、命令レジスタに「+」が入り、ディスプレイにもそれが表示されます。

そのとき同時に、レジスタ1の「33」はレジスタ2にコピーされます。

さらに、キーパッドの「4」を押すと、レジスタ1に「4」が入って、ディスプレイにも表示されます。

最後に計算を実行する「=」を押すと、演算部がレジスタ1とレジスタ2の数を足して、答えの「37」をレジスタ1に書き込みます。
そして、この数字がディスプレイに表示されて、計算結果がわかるという仕組みです。


calculator

コンピュータが電卓より、すぐれているのは、どんなに長いプログラムでも、とても速く正解に実行してくれることです。

 


 

どちらがすごい?

コンピュータの計算速度
など解説。

コンピュータの計算力が使われる例
天気予報

物作りを支えるコンピュータ

プログラミングの歴史

 


 

第3章 情報とプログラミング

情報って何?
情報とは


information

他の人と意見を交わしたり、自分の耳聞した話題を伝えるなど、人は、様々なメッセージをやり取りしながら生きています。
人や機械の間で、やり取りされるメッセージを「情報」といいます。

情報は目には見えませんが、人が次の行動を決めるときには重要なものです。

情報の価値
情報の価値は人によっては、異なるものです。

例えば、あるアイドル歌手の情報は、ファンにとっては重要ですが、アイドルに興味がない人には、さほど重要な情報ではないです。

 


 
ビットって何?

ビットは最小の情報単位

相手に情報を伝えようとしたとき、いちばん小さな情報とは「あるか、ないか」または、「変化があったか、なかったか」という情報ではないでしょうか。

例えば、部屋の電灯がついているか、消えているか。2つの状態のどちらかがわかります。

それでも、なんらかの情報が伝わります。消えていた部屋の電灯がつけば、家の人が帰ってきたのかもしれません。

このように、もっとも小さな情報の単位を「ビット」といいます。
そして、変化の種類が2種類しかない情報を「1ビット」といいます。

スイッチのオンかオフ。
「0か1」

もすべて1ビットの情報です。


1bit

 


 

ビットを複数にして組み合わせる
しかし、1ビットの情報では「はい」か「いいえ」のメッセージしか送れません。

相手に数字の「5」を伝えたいときは、

5は「白赤白赤」とあるので、
「白、赤、白、赤」の順に4回旗をあげます。

これで、相手に数字の「5」というメッセージが送られることがわかります。


flag

ビットを複数に組み合わせれば
8ビットにすれば256種類のメッセージが送れます。

32ビットにすれば43億種類。
64ビットにすれば1844京種類。のメッセージが送れます。

 


 

2進数って何?
10進数と2進数

人間は数を数える時、10ずつ区切って数えます。

これは、人間の手の指が10本あることと関係があると言われています。

この10を基準にした数の数え方を「10進数」といいます。

しかし、コンピュータは「0」と「1」だけを使う、数え方をします。

これを「2進数」といいます。
2進数は0と1だけで、いろいろな数を表しています。


decimal

 


 

2進数の足し算

2進数の「11」が10進数だと「3」になります。

これは、2進数どうしの足し算の方法がわかれば理解できます。
2進数は、それぞれの桁の最大の値が1なので、足して2になるときは「桁上り」が起こるのです。

これは10進数で9に1を足すと、桁が上って10になるのと同じです。


calculation

 


 
2ビット、3ビットの情報

2ビットの情報
2ビットの情報は「0」と「1」の2つの情報を2つ使うので
2×2=4種類の情報を伝えることができます。

この2ビット、4種類の組み合わせで、ロボットに命令することもできます。


2bit

 


 

3ビットの情報
3ビットの場合は「0」と「1」の2つの情報を3つ使うので、
2×2×2=8種類の情報を伝えることができます。

もっとビット数を増やせば、いくらでも大きな数を表すことができます。


3bit

 


 

音を伝えるしくみ

アナログの仕組み

人間が声を出すと、その音は、まわりの空気を細かく振動させながら伝わっていきます。
そして、その空気が相手の鼓膜を振動させることで、音が相手に届きます。

空気の振動を電気信号にして送る方法が開発され、これが電話です。

空気の振動や電話の電気信号は、少しずつ連続して変化しています。
このような連続して変化するものを「アナログ」または「アナログ信号」といいます。

しかし、このアナログ信号の電話には1つ欠点がありました。
遠くに信号を伝えようとすればするほど、電気信号の形が歪んでしまい、もとの音と違って聞こえてしまうのです。

 


 

デジタルの仕組み

そこで発明されたのが「デジタル方式」です。
もとの電気信号の形を細かく分けて、デコボコした形で相手に伝えるのです。

画像を伝える仕組み
ビットマップって何

数字の「1」を画像情報で遠くの相手に送るには、デジタル化する必要があり、「1」の画像を、縦と横に細かく区切ります。
区切ったマス目を、1つずつ調べて、少しでも「1」の形があれば、黒く塗りつぶし、そうでない場合は、白いままにしておきます。これをビットマップといいます。
白い部分を「0」、黒い部分を「1」に置き換えます。

コンピュータやインターネットで情報を送るスピードが十分に速くなる2000年ごろまでは、画像や動画を扱うサービスは普及しませんでした。

現在の情報のしくみ

日本のテレビ放送は、画像や音声などの情報をデジタル信号で送っています。
地上波デジタル放送では横が1440、縦が1080の細かなマス目に区切られた画像になっています。テレビの場合は動画なので、1秒間に、30枚のカラー画像を表示するために、約1500メガビット(15億ビット)もの情報が必要です。

これを圧縮技術によって、約17メガビット(1700万ビット)の情報を送っています。

バーコードとQRコードの情報
線の太さや黒く塗りつぶされた位置を読み取って、「0」と「1」の情報に置き換えています。
この情報をもとに、コンピュータとやり取りして、商品名や値段を調べることができます。

 


 

プログラミングとコンピュータ しくみと基本がよくわかる! (楽しい調べ学習シリーズ) 単行本 – 2017/11/17
大岩 元 (監修)

LINEで送る
Pocket

おすすめ