組み込み初心者のための読書案内

アップウィンドテクノロジー・インコーポレイテッド
中村憲一
(2003/10/12)
(2004/9/24更新)

組み込み初心者の方々が読んでおくべき書籍や雑誌についてまとめてみました。今や、ハードウェア技術者の方もソフトウェア技術者の方も両方の知識を持つことが求められています。特に、以下で紹介している「はじめて読む」シリーズは、プロセッサの動作を知らずにプログラムを書いている(または書かされている)ソフトウェア技術者の方々にとっては読んでおくべき書籍と言えるでしょう。また、「初歩のエレクトロニクス&コンピュータ」シリーズは、オームの法則を習った中学生以上の方には理解しやすく解説されています。「トランジスタって何?」という組み込み技術者(特にソフトウェア技術者)の方々は、今すぐ書店に向かうか、インターネットで注文しましょう。周りの人に尋ねるのも良いですが、まずは「自分で調べて勉強すること」を実践してみましょう。 また、これらの書籍や雑誌を揃えるのが困難な方は、公立図書館、会社の図書室か先輩から借りて読みましょう。
まだまだ見落としていたり、紹介しきれなかった雑誌・書籍もあるかと思いますが、 「こんな雑誌・書籍があるよ。」、「この雑誌にこんな記事が載ってるよ。」 などなど、適宜皆様からご指摘いただければと思います。

目次

1. ハードウェア関連

2. ソフトウェア関連

3. その他

1. ハードウェア関連

「はじめて読む8086」

村瀬康治 監修, 蒲地輝尚 著
1987年4月, アスキー, 定価1,682円(税込)
Amazon.co.jp アソシエイト

コメント:
16ビットのCPUである8086, V30, 80286のマシン語をMS-DOSのコマンドを使用して実習できるようになっています。何しろ初版の発行が今から16年も昔ですので、今では「MS-DOSって何?」という方も多いかと思います。現在では32bitのCPUを搭載したPCのWindows 2000/XPまたはLinux上で開発するのが一般的ですが、昔は16bitのCPUを搭載したPCのMS-DOSというOS上で開発するのが一般的でした。 コマンドプロンプトの画面を見たことがない方は、Windows 2000/XPでスタート→プログラム→アクセサリ→コマンドプロンプトを実行してみてください。本書で解説されているdebugコマンドなどが使用できますよ。

「はじめて読むMASM」

蒲地輝尚 著
1988年9月, アスキー, 定価1,886円(税込)
Amazon.co.jp アソシエイト

コメント:
「はじめて読む8086」の続編です。マクロ機能を持ったMS-DOS用のアセンブラであるMASMを使用して疑似命令、セグメントなどについて解説されています。アセンブル、リンク、デバッグ、EXE形式からCOM形式へのファイル変換とその意味、C言語との変数の受け渡しなど、組み込みソフトウェア開発に欠かせない基礎の知識について易しく解説されています。

「はじめて読むマシン語」

蒲地輝尚 著
1987年4月, アスキー, 定価1,264円(税込)
Amazon.co.jp アソシエイト

コメント:
マシン語(機械語とも呼ばれます)の入門書です。残念ながら今では「マシン語」という言葉は死語になってしまったようです。上記2冊をすでに読まれた方にとっては、読みやすいでしょう。

「はじめて読むアセンブラ」

蒲地輝尚 著
1983年1月, アスキー, 定価1,682円(税込)
Amazon.co.jp アソシエイト

コメント:
「はじめて読むマシン語」の続編です。残念ながら本書も現在では内容が古くなっていますが、CP/M上のツールを使ってアセンブラでプログラミングする方法について解説されています。アセンブラでソフトウェアを書く必要のある方は必携ですが、現在では16bitのCPUにもCコンパイラが用意されている場合が多く、また32bit以上のプロセッサが主流になっていますのでアセンブラでプログラムを書く機会が少なくなっているでしょう。

「はじめて読む486」

蒲地輝尚 著
1994年9月, アスキー, 定価2,548円(税込)
アスキーの紹介ページ
Amazon.co.jp アソシエイト

コメント:
インテルの486CPUについて易しく解説されています。プロテクトモード、保護モード、セグメント、割り込み、ページングなど、Linuxカーネルの中身を理解するのに必須の知識が満載です。 ARM, PowerPC, MIPS, SHなどの組み込みLinuxカーネルで苦労されている方は、まずはx86のLinuxカーネルについて理解してみると「なぜこんなコードなのか?」納得出来るかもしれません。

「CPUの創りかた」

渡波 郁 著
2003年9月, 毎日コミュニケーションズ, 定価2,940円(税込)
毎日コミュニケーションズの紹介ページ
Amazon.co.jp アソシエイト

コメント:
4bitのCPUを例に、CPUの動作原理から設計方法までを解説しています。秋葉原で手に入る部品のみで実際にCPUを創ってみることができますが、74HCシリーズ、プルアップ、チャタリング、CRフィルタなど専門用語が出て来ますので、以下に示すECBシリーズを読んでから本書を読むほうがより理解が深まるかも知れません。
表紙が表紙だけに書店で買うのが恥ずかしいかもしれませんが、そういう場合は、是非ともインターネットで注文しましょう。

「よくわかるCPUの基本と仕組み―CPU内部構造とソフトウェアの動作」

西久保靖彦 著、定価1,680円(税込)、2004年9月、秀和システム
秀和システムの紹介ページ
Amazon.co.jp アソシエイト

コメント:
上記の「CPUの創りかた」が、2003年に大ヒットしたのがまだ記憶に新しいですが、こちらのほうは、CPUに関する必要な知識について一通り真面目に執筆されており、電車で読んでいて恥ずかしい挿絵もありません。この他にも2004年は、いろいろなCPU解説本が発売されており、CPU解説本の当たり年といえそうです。

「初歩のエレクトロニクス&コンピュータ ECB No.1(1999年 夏号)」

特集 トランジスタから始めよう
CQ出版 トランジスタ技術編集部 編, B5判 128ページ, 定価980円(税込), 1999年8月10日発行
CQ出版の紹介ページ
Amazon.co.jp アソシエイト

コメント:
まずは、本書でトランジスタについて学びましょう。

「初歩のエレクトロニクス&コンピュータ ECB No.2(1999年 秋号)」

特集 アナログICを使おう
CQ出版 トランジスタ技術編集部 編, B5判 136ページ, 定価980円(税込), 1999年12月1日発行
CQ出版の紹介ページ
Amazon.co.jp アソシエイト

コメント:
次に、アナログICについて学びましょう。

「初歩のエレクトロニクス&コンピュータ ECB No.3(2000年 冬号)」

特集 ディジタルICを使おう
CQ出版 トランジスタ技術編集部 編, B5判 144ページ, 定価980円(税込), 2000年3月1日発行
CQ出版の紹介ページ
Amazon.co.jp アソシエイト

コメント:
アナログICをマスターしたら、今度はデジタルICについて学びましょう。ここまで読めば、ある程度の回路設計は出来るようになるでしょう。

「初歩のエレクトロニクス&コンピュータ ECB No.4(2000年 春号)」

特集 PICマイコンを使おう
CQ出版 トランジスタ技術編集部 編, B5判 144ページ, 定価980円(税込), 1999年8月10日発行
CQ出版の紹介ページ
Amazon.co.jp アソシエイト

コメント:
ここまで読めば、回路設計「初心者」は卒業です。次は、ARM, H8, SH, PowerPC, MIPS, Pentiumなどのプロセッサ、PLD、FPGA、HDL、回路設計技術・・・など、各自の専門分野の専門書に進みましょう。

2. ソフトウェア関連

「C/C++による組み込みシステムプログラミング」

Michael Barr 著, 有馬三郎 訳
2000年4月, オライリー・ジャパン, 定価3,360円(税込)
オライリー・ジャパンの紹介ページ
Amazon.co.jp アソシエイト

コメント:
書名の通り、C/C++による組み込みシステムプログラミングの解説書です。「組み込みシステムとは」から始まり、LEDの点灯プログラムの作成、GNUツールを使用したコンパイル、リンク、ダウンロード、デバッグ、エミュレータとシミュレータ、RAM/ROM、フラッシュメモリ、ペリフェラルなど組み込み技術者にとって必須の知識について解説されています。まさに組み込み初心者必携のバイブルといえるでしょう。
本書の読書レポート:
開明堂の唯野様

「GNUソフトウェアプログラミング」

Mike Loukides, Andy Oram 著
引地 美恵子, 引地 信之 訳
1999年2月, オライリー・ジャパン, 定価3,360円(税込)
オライリー・ジャパンの紹介ページ
Amazon.co.jp アソシエイト

コメント:
Emacsの使用方法、gccを使ったコンパイルとリンクの方法、ライブラリ、デバッグ手法、ソースコード管理、プロファイルなど組み込みソフトウェアを開発する際に必要な手順について解説されています。上記の「C/C++による組み込みシステムプログラミング」と合わせて活用してください。また、付録CD-ROMには、米Red Hat社のGNUPro(当時は、米Cygnus Solutions社が開発)98r2版が収録されています。
本書は、岩手大学工学部情報システム工学科・3年次のソフトウェア構成論の講義で採用されているようです。

「オペレーティングシステムの基礎」

山崎 傑 著
1992年4月, CQ出版, 定価2,548円(税込)
CQ出版の紹介ページ
Amazon.co.jp アソシエイト

コメント:
「OSとは」から始まり、基本構成要素、ハードウェアやインターフェースの管理、プロセス(タスク)、ファイル、メモリの管理、スケジューリングなど制御システム向けのOSについて基本的な知識について解説されています。本書を読破すれば、uITRON仕様、組み込み向け商用RTOS、そして組み込みLinuxまでもすんなり理解できるでしょう。 本書は、宇部短期大学情報システム学科のオペレーティングシステムの講義の参考書として推薦されているようです。

「組込み開発者におくるMISRA-C ― 組込みプログラミングの高信頼化ガイド」

MISRA‐C研究会 編, 日本規格協会, 3,570円(税込)
SESSAMEの紹介ページ
Amazon.co.jp アソシエイト

コメント:
MISRA-Cとは、 MISRA (Motor Industry Software Reliability Association)という団体が定めた、自動車用ソフトウェア向けのC言語の利用ガイドライン(Guidelines For The Use Of C Language In Vehiche Based Software)のことです。本書は、SESSAME Working Group 3(MISRA-C 研究会)によってまとめられ、1998年に発行されたMISRA-C Version1 に記載されている127のルールについて解説されています。ルールブックというと一般的には読み進めにくいものが多いですが、実際のプログラムに適用するために必要な考え方や例題が数多く提示されているため、とても理解しやすく読みやすい内容になっています。

その他

「組込みシステム開発のためのエンベデッド技術」

社団法人日本システムハウス協会 エンベデッド技術者育成委員会 編・著
電波新聞社、B5判 280頁、本体価格2,310円(税込)、ISBN4-88554-754-7
Amazon.co.jp アソシエイト

コメント:
「組み込みとは?」を懇切丁寧に解説した組み込み技術者のための入門書です。情報処理技術者試験問題 テクニカルエンジニア(エンベデッドシステム)の過去問が付録として収録されていますので受験対策本としても活用できます。新入社員の研修時に配布するテキストとして最良でしょう。



お問い合わせは info@embedded.jp まで