独習アセンブラ 新版

翔泳社(出版社) , 大崎博之(著)

商品番号
170290
販売状態
発売中
納品形態
宅配便にてお届け
発売日
2021年09月08日
出荷開始日
2021年09月07日
ISBN
9784798170299
判型
B5変
ページ数
736
キーワード
プログラミング  アセンブラ  独習シリーズ

販売価格:¥4,268(税込)

ポイント:388pt (10%)
詳細はこちら

送料無料 在庫あり

電子書籍を見る
ほしい物リストに追加

アセンブリ言語だけでなく
コンピュータアキーテクチャを学ぶ
標準教科書

今や、アセンブリ言語は、
最初に学ぶプログラミング言語ではありません。
それでも、C言語をはじめとしたプログラムを書いて、
実行し、デバッグする中で、必ずたどり着くことになるのが、
アセンブリ言語であり、コンピュータアーキテクチャです。

本書は、CPUの仕組みやメモリ、
データ構造について学びながら、
・x86(IA-32)
・x86_64
・ARM
・AVR
・CASL II
といった幅広いアーキテクチャの
アセンブリ言語に触れ、
「コンピュータがどのように
プログラムを実行しているのか」を
深く理解するための一冊です。

■目次
・Chapter 1 アセンブラとアセンブリ言語
・Chapter 2 数の表現
・Chapter 3 文字の表現
・Chapter 4 コンピュータの構造:CPUの構成
・Chapter 5 コンピュータの構造:メモリとCPU処理の抽象モデル
・Chapter 6 コンピュータの構造:スタック
・Chapter 7 GNUアセンブラGAS
・Chapter 8 アセンブリ言語プログラムの実行とインラインアセンブラ
・Chapter 9 x86命令セット:レジスタ
・Chapter 10 x86命令セット:データ転送
・Chapter 11 x86命令セット:算術演算、論理演算
・Chapter 12 x86命令セット:実行制御
・Chapter 13 x86命令セット:浮動小数点演算
・Chapter 14 x86命令セット:SIMD命令
・Chapter 15 仮想コンピュータの例:COMET II
・Chapter 16 マイクロコントローラの例:Atmel AVR
・Chapter 17 RISC CPUの例:Armv8-A
・Chapter 18 64ビットCPUの例:x86-64

アセンブリ言語だけでなくコンピュータアーキテクチャを学ぶ標準教科書

本書の学習メゾット

わかりやすい【解説】

わかりやすい【解説】

基礎的な知識・概念・機能を、サンプルプログラムを例示しながら詳細かつ丁寧に解説します。

理解が深まる【ワンポイント解説】

理解が深まる【ワンポイント解説】

押さえておきたいことを「note」で補足解説しています。プラスαの知識が身につきます。

学習成果を確かめる【理解度チェック】

学習成果を確かめる【理解度チェック】

各章末にある【理解度チェック】で、その章で学んだ事項を理解できたか確認できます。

Chapter 1 アセンブラとアセンブリ言語
1.1 アセンブリ?アセンブル?アセンブラ?
1.2 プログラムの表現
1.3 高級言語からアセンブリ言語へ
1.4 C言語から機械語へのコンパイル
1.5 アセンブリ言語から機械語へ

Chapter 2 数の表現
2.1 10進数と60進数
2.2 N進数
2.3 2進数(整数)
2.4 16進数
2.5 8進数
2.6 2進数(実数)

Chapter 3 文字の表現
3.1 文化・慣習による表記の違い
3.2 文字に関する用語
3.3 ASCII
3.4 UnicodeとUTF-8

Chapter 4 コンピュータの構造:CPUの構成
4.1 複雑化するコンピュータ
4.2 コンピュータの構成
4.3 CPUの構成
4.4 IA-32アーキテクチャのレジスタ
4.5 デバッガによるトレース(レジスタ)

Chapter 5 コンピュータの構造:メモリとCPU処理の抽象モデル
5.1 いろいろなメモリ
5.2 メモリのアドレスとアドレスマップ
5.3 リトルエンディアンとビッグエンディアン
5.4 データの大きさを表す用語
5.5 CPU処理の抽象モデル
5.6 デバッガによるトレース(メモリアクセス)

Chapter 6 コンピュータの構造:スタック
6.1 CPUとスタック
6.2 データ構造としての「スタック」
6.3 CPUとメモリによるスタックの実現
6.4 スタックによる関数呼び出しの実現
6.5 ABI(Application Binary Interface)
6.6 デバッガによるトレース(スタック)

Chapter 7 GNUアセンブラ(GAS)
7.1 GNUアセンブラ(GAS)とは
7.2 GNU binutilsによるバイナリファイル解析
7.3 GNUアセンブラを使ってみる
7.4 アセンブリ言語プログラムの例
7.5 GNUアセンブラ(GAS)の特徴
7.6 GASの文法
7.7 IA-32アーキテクチャ固有の話題
7.8 GASの疑似命令(ディレクティブ)

Chapter 8 アセンブリ言語プログラムの実行とインラインアセンブラ
8.1 インラインアセンブラとは?
8.2 C言語からアセンブリ言語プログラムの呼び出し
8.3 プログラムの例:CPUのTSC(Time Stamp Counter)取得
8.4 GCCの基本asm文
8.5 GCCの拡張asm文
8.6 インラインアセンブラの実例

Chapter 9 x86命令セット(レジスタ)
9.1 IA-32アーキテクチャのCPU
9.2 IA-32アーキテクチャのドキュメント
9.3 レジスタ
9.4 命令の分類
9.5 よく使われる命令ランキング

Chapter 10 x86命令セット(データ転送)
10.1 データ転送命令とは
10.2 汎用データ転送命令:MOV
10.3 データ拡張転送命令:MOVZX/MOVSX
10.4 交換命令:XCHG
10.5 スタック操作命令:PUSH
10.6 スタック操作命令:POP
10.7 アドレス計算命令:LEA

Chapter 11 x86命令セット(算術演算・論理演算)
11.1 本章で扱う命令
11.2 加算命令:ADD/ADC
11.3 減算命令:SUB/SBB
11.4 乗算命令:MUL/IMUL
11.5 除算命令:DIV/IDIV
11.6 インクリメント命令:INC
11.7 デクリメント命令:DEC
11.8 比較命令:CMP
11.9 論理命令:AND/OR/XOR
11.10 論理命令:NOT
11.11 ビットシフト命令:SAL/SAR/SHL/SHR

Chapter 12 x86命令セット(実行制御)
12.1 プログラムの実行制御とは?
12.2 無条件転送命令:JMP
12.3 サブルーチンの呼び出し:CALL
12.4 サブルーチンから戻る:RET
12.5 条件付きジャンプ命令:Jcc
12.6 コードリーディング

Chapter 13 x86命令セット(浮動小数点演算)
13.1 IA-32アーキテクチャにおける浮動小数点演算
13.2 x87 FPU(浮動小数点ユニット)
13.3 x87 FPUによる浮動小数点演算
13.4 x87 FPU命令の概要
13.5 デバッガによるトレース(浮動小数点演算)
13.6 コードリーディング

Chapter 14 x86命令セット(SIMD命令)
14.1 SIMDとは?
14.2 IA-32アーキテクチャにおけるSIMD命令
14.3 デバッガによるトレース(SIMD命令)
14.4 応用的プログラミング

Chapter 15 仮想コンピュータの例:COMET II
15.1 COMET IIとCASL IIの概要
15.2 CASL IIの文法
15.3 COMET IIのアーキテクチャ
15.4 COMET II命令セット(概要、アドレッシングモード)
15.5 COMET II命令セット(データ転送)
15.6 COMET II命令セット(算術/論理演算)
15.7 COMET II命令セット(実行制御)
15.8 シミュレータによるトレース
15.9 コードリーディング

Chapter 16 マイクロコントローラの例:Atmel AVR
16.1 Atmel AVRファミリの概要
16.2 GNUアセンブラ(AVR固有の機能)
16.3 AVRファミリCPUのアーキテクチャ
16.4 AVR命令セット(概要、アドレス指定モード)
16.5 AVR命令セット(データ転送)
16.6 AVR命令セット(算術/論理演算)
16.7 AVR命令セット(実行制御)
16.8 デバッガによるトレース(AVR)
16.9 コードリーディング

Chapter 17 RISC CPUの例:Armv8-A
17.1 Armv8-Aの概要
17.2 GNUアセンブラ(ARM固有の機能)
17.3 Armv8-Aアーキテクチャ
17.4 Armv8-A A64命令セット(概要、アドレス指定モード)
17.5 Armv8-A A64命令セット(データ転送)
17.6 Armv8-A A64命令セット(算術/論理演算)
17.7 Armv8-A A64命令セット(実行制御)
17.8 コードリーディング

Chapter 18 64ビットCPUの例:x86-64
18.1 Intel 64アーキテクチャの概要
18.2 Intel 64アーキテクチャの特徴
18.3 よく使われる命令ランキングとABI
18.4 コードリーディング

各種問い合わせは以下のリンクからご連絡ください

関連商品

詳解Rustプログラミング

販売価格:3,960円(税込)

2021.11.17発売

スラスラわかるPython 第2版

販売価格:2,530円(税込)

2021.11.17発売

おすすめ特集

ベンダー資格 試験対策本特集

ベンダー資格に関する書籍を試験ごとに紹介!ベンダー資格試験対策本特集

Linuxおすすめ本特集

【Linux本特集】入門~達人レベルまで!クラウド時代の必須知識Linuxを学ぶおすすめの本

Web制作関連本特集

HTML/CSS、JavaScript、UI/UX、デザインまで。Web制作・フロントエンド開発に役立つ本。

マネジメント・リーダーシップ特集

人材育成やチームビルディング、プロダクトマネジメントや業務改善など、組織を目標達成に導く書籍

プログラミング本特集

翔泳社のプログラミング書籍の中から、入門・初級者向けの書籍をピックアップ!

ゲームプログラミング・ゲーム制作関連本

趣味で始めてみたい方や、ゲームプログラマー・ゲームデザイナーにもおすすめ!ゲーム制作おすすめ本

特集をもっと見る