アセンブラへの道 coding(42)

旧題：「アセンブラへの道」組立語(assembler)・機械語(machine language)・電子計算機(CPU

Qiitaでの編集作業が重くなったため、一部移転しました。

# 目次(content)
・目次(content)
・前書きの前に(before preface)
・・お願い(ask)
・・・ CPUの名前(name of CPU)
・・・ 命令体系(instruction set)
・・・ 道具(tools)
・・（ざっくり？）アセンブラ(rough assembler)
・・・ アセンブラって何。(What is an assembler?)
・・・ 構成要素(element)
・・・ 命令(operator)
・・・ 演算対象(operand)
・・・ 登録器(register)
・・・ 数値、直値(number)
・・・ 定数(constant)名
・・・ ２進数(bynary digit)、８進数(octal digit)と１６進数
・・事例(case study)
・前書き(preface)
・目的(purpose)と成果(outcome)
・理由(reason)
・鍵語(keyword)
・・視点(view point)
・組立器(入門(Assembler introduction)
・・nasm(Netwide Assembler)
・・mac(apple)
・・ stack machine
・・ 制作(making)
・機械語(machine languate)
・・ 機械語 @7shi 
・8 bit CPU
・・6502(Mis technology)
・・6809(Motorola)
・・ H8(日立、ルネサス）
・・AVR(Alf Egil Bogen, Vegard Wollan, RISC:Reduced Instruction Set Computer) by Atmel
・・・ardino/memos
・・8080(Intel)
・・Z80(Zilog)
・・・Z80 @Stosstruppe
・・・PC-6001 @fuzzball
・・・CHIP-8
・16bit CPU
・・PDP11(Programmed Data Processor:DEC)
・・ CAP-X(Comp-X Assemble Program:IPA)
・・ CASLII(Comet Assemble Language:IPA)
・・M16C(三菱、ルネサス）
・・68000(68K:Motorola)(Intel)
・32 bit
・・NIOSII(Altera)
・・MicroBraze(Xilinx)
・・ SH(Super H(hitachi?), 日立、ルネサス）
・・ IA32-x86(intel)
・・・ paiza(web compiler)
・・・ Linuxでx86アセンブラ by @MoriokaReimen 
・・・LJの力計算をフルアセンブラで書いてみる @kaityo256
・・ARM(Advanced RISC Machines)
・・・ Raspberry PI
・・ V850(Renesas:Renaissance Semiconductor for Advanced Solutions)
・・・athrill @kanetugu2018
・・SPARC(Sun)
・・powerPC(IBM)
・・MIPS(Microprocessor without Interlocked Pipeline Stages)
・・RISC-V(Reduction Instruction Set Computer)
・64bit CPU
・・x64:64bit x86(Intel)
・・arm64(ARM)
・除虫(debug)
・・debug(MS-DOS 16bit)
・・ gdb(GNU)
・・・ gdb with docker
・・・ gdb on mac
・・・gdb リモートデバッグ @tetsu_koba 
・・ Eclipse debugger
・逆組立器(dis assembler)
・・リバースエンジニアリングへの道 @deta-mamoru
・・連結器(linker)
・・LLVM IR 
・・bitcode
・・WebAssembly
・・Rust
・・ by GO
・・ by python
・参考資料(reference)
・文書履歴(document history)
アセンブラへの道(2)
https://qiita.com/kaizen_nagoya/items/2a0bd88216bc51278be5
中央処理装置(CPU: central processing unit)・論理回路
・CPU基礎
・GPU
・・GPU紹介・比較等
・コンピュータの動作原理 by @niQSun
CPUの創り方
・CPUの創り方　@eijian
論理回路
OS(operating system)/kernel/boot(start up)/割込
・FPGA+SoC+Linuxのブートシーケンス@ikwzm
・Linux @akachochin
・30日でできる！ OS自作入門
応用(application)
・TOPPERS活用アイデア・アプリケーション開発コンテスト
算譜(source code)
・CASL
・TD4
16進数(hexadecimal number),8進数(octal number), 2進数(binary number)
参考資料(reference)
・書籍(book)
・・パタ・ヘネ
・その後
・自己参考資料(selfreference on Qiita)
追伸(post script)
文書履歴(document history)
intel: アセンブラへの道入り口
https://qiita.com/kaizen_nagoya/items/0bf939143593fbb7114a
・信頼性：ソフトウェアとコンピュータ
・機械語、アセンブラ
・・1　直球勝負：CPUの創りかた
・・2　直近勝負
・・3 仮説勝負
・参考資料
・文書履歴

# 前書きの前に(before preface)
2021年10月10日、この記事をわかりやすい記事に変身させようと思い立ちました。
理由は、アセンブラについての、怪しげな記事がネットにあちこち落ちていたりします。
いろんな記事のうち、いいところを寄せ集めながら、これならわかりやすいという内容を目指そうというのが第一の目的です。

Wikipediaも、記事によってはひどいものだったりしても、直すと元に戻されることがしばしばです。なぜ、怪しげな文章を放置して、参考文献つけた文章を消す人がいるのか意味がわかっていません。
「アセンブラへの道」のいいね（LGTM)を1000にして、Viewsを100,000以上になってもらって、Wikipediaの記事の参考資料として使うことを第二の目的としようかなって思っています。

標題も単純にしました。

## お願い(ask)
アセンブラについての記述をされる方々へのお願いです。

### CPUの名前(name of CPU)
対象となるCPUの名前を、シリーズ名、個別名でも結構ですので、固有名詞の記載をお願いします。ボード名、システム名だと、どのCPUのアセンブラについて書いているのか調べるのに手間取ることがあります。

特定のCPUのアセンブラではない場合は、対象となる仮想機械の名称を記載してください。ご自身でお造りになられた仮想機械の場合は、その旨を付記くださると幸いです。

### 命令体系(instruction set)
どういうアセンブラなのか、命令体系またはマニュアル類へのリンクをおつけくださると幸いです。

ご自身でお作りになられた仮想機械の場合でも、Githubなどに命令表またはマニュアルなどを置き、そのURLをお示しくださると幸いです。

### 道具(tools)
アセンブルする道具が現存する場合は、そのURLをおつけください。
すでに販売を停止し、WEB上に存在しない場合は、販売者の許可が得られれば、その概要などを掲載いただけると幸いです。

ご自身でお作りになられた道具(assembler)の場合は、Githubなどにソースコードまたはバイナリをおつけいただくか、有償販売の場合はそのURLをお示しくださると幸いです。

## （ざっくり？）アセンブラ(rough assembler)

### アセンブラって何。(What is an assembler?)

アセンブリ：assembly(名詞) 一般用語では集会。組立。電子計算機用語では機械語を人間が読みやすい意味の言葉に変換した文字列。文字列を組み立ててプログラムを記述できる。
アセンブラassembler（名詞） 組立語(assembler)で書いたプログラムを機械語へ変換する道具（tool)。およびそこで記述している言語。
アセンブル：assemble（動詞）組立語で書いたプログラムを機械語に変換すること。
アセンブリング：assembling（動名詞）組立。組み立てている進行形。
アセンブルド:assembled:（過去形）組立った。例：assembled structure：構造体の要素が構造体だと、そんな感じ。

### 構成要素(element)
アセンブラは、命令、命令対象の数値か数値を代入した変数名または定数名か、登録器(register)名か、、命令対象の主記憶装置の番地または番地を表す変数名または定数名からなります。

### 命令(operator)
機械語の種類に応じて、複数の機械語の機能を一つの命令語（例えばmov)に対応させたり、一つの機械語を一つの命令に対応させることがある。機械語とアセンブラは、１対１,多対１または１対多の関係にある。

### 演算対象(operand)
命令により演算対象の数が一つのものは単項演算子、演算対象が二つのものは二項演算子、演算対象が三つのものを三項演算子という。
演算対象は、数値か数値を代入した変数名または定数名か、登録器名か、主記憶装置の番地または番地を表す変数名または定数名のことがある。

### 登録器(register)
電子計算機の一時記憶装置(register)。演算後に、演算結果を格納する場合があり、演算前と同じ値を持っているとは限らない。演算結果を主記憶装置に直接代入する場合もある。

### 数値、直値(number)
直接数値を書いて、その値として計算対象になるもの。

### 定数(constant)名
値に何か名前がついている場合には、名前の代わりに定数名を用いた方がわかりやすい場合がある。例えば、Trueが１で、Falseが0の場合に、1, 0だと何の意味で使っているのか、プログラマの意図を汲み取るのに時間がかかるかもしれない。

<!--
### 変数(variable)名（）
ある番地に
-->

### ２進数(bynary digit)、８進数(octal digit)と１６進数(hexadecimal)
主記憶装置の大きさは、８ビットごとに数字が増えていく番地(address)で示す。１６進数は１文字は４ビットを表すことができる。
番地は、16進数で表すことがある。演算対象の値は２進数、８進数、１０進数、１６進数で表すことがある。

|2進数|8進数|１０進数|１６進数|
|--:|--:|--:|--:|
|0000|0|0|0|
|0001|1|1|1|
|0010|2|2|2|
|0011|3|3|3|
|0100|4|4|4|
|0101|5|5|5|
|0110|6|6|6|
|0111|7|7|7|
|1000|10|8|8|
|1001|11|9|9|
|1010|12|10|A|
|1011|13|11|B|
|1100|14|12|C|
|1101|15|13|D|
|1110|16|14|E|
|1111|17|15|F|
|10000|20|16|10|

## 事例(case study)
アセンブラで覗くコンピュータの本質
https://qiita.com/shm_ut/items/d27e6b80a5561a74d20f

# 前書き(preface
Cコンパイラで生成したコードを、アセンブラで書き直したことがある。
コンパイラの最適化がまだ進んでいないころ、
Microsoft Cでコンパイルすると、NOPが結構入っていた。
単にNOPを外すだけでなく、マクロで簡潔にしてみた。

通信エミュレータで、NOPがなくなるとタイミングがずれてうまく動かないことが分かった。

ああ、Cコンパイラの作り方を覚えようと思った。

Cコンパイラは電総研（産総研）言語システム研究室の研究生で滞在した頃、Small Cコンパイラを写経し、Pascalで書かれたコンパイラをC言語に移植し、OBJという抽象データ型の言語のシンタックスチェッカをC言語で作成した。
C言語を学ぶならコンパイラを写経するか、移植するか、改良するといいことがわかった。

研究室ではLISPが基本言語で、MuleというEmacsの多言語化を取り組まれていた戸村哲さんのディスクをNFSで利用させいていただいていた。エディタはMuleではなくVZエディタで編集し、telnet でloginしたシステムでコンパイルしたりしてた。

その時、アセンブラはわかるけどLispは苦手という発言をしたら、LISPはアセンブラだと言われた。
たしかに、当時LISPチップ、LISP マシーンなるものがあり、LISPを機械で解読して処理していた。

計画(program)を記述する人が、計画者(programmer)です。
計算機計画者(computer programmer)は、ここでは計算機の実行計画(programming)であるか、計算機そのものの計画(program)であるかを問いません。計算機の計画を考える一つの切り口が組立語(assembler)。

アセンブラ
https://researchmap.jp/blogs/blog_entries/view/80826/8469d296d05a7de30a2886be867aa326?frame_id=441424

アセンブラ入門への入り口, 2012
https://researchmap.jp/blogs/blog_entries/view/78451/f56954643a2e9f7907fcc45fe87009c4?frame_id=407644
~~https://researchmap.jp/jowkoc1zp-45644/~~

という記事を書いた。その後、迷走している。現在記事をQiitaに書き換え中。
https://qiita.com/kaizen_nagoya/items/0bf939143593fbb7114a

1989年以前から、アセンブラが最高のオブジェクト指向プログラミングが書きやすい言語だと主張していました。アセンブラの対象は、物理的かつ論理的なObject（Register, memory)だし。対象物が違っても類似の操作をうまくマクロ定義できれば、、、。

# 目的(purpose)と#成果(outcome)
Qiitaの組立語(assembler)の記事が少ないのを嘆くのではなく、
組立語(assembler)に関するどういう記事を掲載すると、
抜け漏れなく、組立語(assembler)に関する情報提供ができるかを確認する。

~~10~~(20180708達成済) ~~20~~(20180715達成済)30以上のCPU(仮想CPUを含む)の組立語(assembler)、組立語(assembler)に関する１０以上の視点が提供できるまで一覧を作り、ないものは記事も書く。記事数が~~100~~(20180704到達済) ~~200~~(20180711到達済）1000になるまで収集する。

6809, 68K, SPARC, PIC, CAP-Xに関する組立語(assembler)・機械語(machine language)視点でのQiitaでの記述が見当たっていません。これがそうだよというものをお知らせくださると幸いです。

20180716追記：MC6809, 68000, SPARC, PIC,のQiita記事を仮置き。まだ試験も模擬試験もしていません。どなたかが、試験または模擬試験結果を掲載してくださると幸いです。

20180716追記
CAP-X, H8, M16C, SHの記事を仮置き。

# 理由(reason)
アセンブラを学ぶ理由はいくつかある。

０）「単純に楽しいから学ぶのだ」
0と1のコンピュータ世界　バイナリで遊ぼう！　坂井弘亮, 坂井丈泰, 愛甲健二, 竹迫良範, 松田和樹,マイナビ, 2014, p.236
https://www.amazon.co.jp/dp/4839951020

坂井弘亮さんのアセンブラのセミナ等での発言だけでなく、OSC北海道での受講された若いからの口からも「すごく面白かった」と。

１）コンパイラを作る
２）CPUの機能を生かしたOSを作る
３）セキュリティの課題、技術を確認する
４）システムの保守・運用時のパッチ当て
５）新しいCPUを設計する
６）ソフトウェアの高速化、省容量化の検討

アセンブラを学ぶのに、いくつか経路を想定する。
１）「CPUの創り方」から「パタ・ヘネ」「ヘネ・パタ」
２）「CASLII」から「Code Complete」
３）今使っているPCのCPU(Intel or ARM)から
４）今使っている言語で、アセンブラ、CASLIIのシミュレータ等を作る
５）通信系の高速化、省容量化
６）電動機(motor)などの高速化、省容量化

# 鍵語(keyword)
組立語(assembler)　アセンブリ　アセンブリ言語　機械語(machine language)　逆組立(disassemble)　デバッガ　連結器(linker)　ロケータ　　装置運転者(device driver)　起動処理(boot)　CPU FPU GPU DSP 論理回路(logical circuit)

略号、短縮名のfull spellingは、語源を知る上で付記。現在有効でない場合もある。
より良い略号のfull spelling提案は歓迎。このfull spellingは有効でないというだけの言及には対応できません。ごめんなさい。

最近は略号ではなく短縮名(short name)という用語が流行っている。例えば、ISOはフランス語の略号ではあっても英語の語順ではない。そこで、短縮名ということにすれば、略号の順番に捕らわれる必要がない。
Wi-FiもHi-Fiの類似語だが、Wireless Fidelityの略号ではないと主張している。このように、主体が否定していることを、わかわざ蒸し返さなくても、単に説明(description)として記載すれば、衝突を避けることができる。

組立語、機械語 Qiita記事　略号、訳語一覧
https://researchmap.jp/blogs/blog_entries/view/80826/313986f1e693bc26958056accd4f8ce0?frame_id=441424
~~https://researchmap.jp/johmnxgin-1778110/#_1778110~~

## 視点(view point)
(0)16進数(hexadecimal number)8進数(octal number), 2進数(binary number)
(1)機械語(machine language)
(2)組立語(assembler)
nasm, masm, gas...
(3)除虫(debug)
 debugなど
例：debugコマンド(MS DOS)
https://qiita.com/kaizen_nagoya/items/31542d281d16d135df66
(4)逆組立器(dis assembler)
例：「項書き換え機能付きプログラム」のディスアセンブラの作成
https://qiita.com/kaizen_nagoya/items/8b8fe645b06bc7eccefb
(5)連結器(linker)、配置器(locator)
(6)C/C++との連携
(7)OS, カーネルでの利用
 TOPPERSなど
例：TOPPERS/SSPカーネルソース勉強会(1) start.S
https://qiita.com/kaizen_nagoya/items/fa0d482bfaacf37dbe62
(8)アセンブラで書いた道具(tool)類(OS,カーネルを除く）
　VZなど
例：VZエディタ移植(porting)に当たって実施したことと成果
https://qiita.com/kaizen_nagoya/items/5551be98dcbed8f41949
(9)アセンブラを書くための道具類(アセンブラ、ディスアセンブラ、リンカ、ロケータを除く）
(10)応用(application)
例：電動機制御(motor controll)算譜設計(program design)における３つの罠６つの教訓（実機）
https://qiita.com/kaizen_nagoya/items/b39b6b7ba0d90dff471d
(11) 中央処理装置(central processing unit)
x86,x86-64, arm, arm64, caslII, avr. 8080, z80, pdp11, powerpc, mips, S/390

(12) 論理回路(logic circuit), Verilog-HDL, VHDL
例：RTL設計スタイルガイド Verilog HDL編(System Verilog対応版）
https://qiita.com/kaizen_nagoya/items/4c02f1575db1f28310a7

## 組立器入門(Assembler introduction)

アセンブラ入門への入り口＆名古屋のIoTは名古屋のOSで
https://qiita.com/kaizen_nagoya/items/0bf939143593fbb7114a

基礎からやりなおしメモ 【アセンブラ/CPUの挙動】
https://qiita.com/yuri_RN/items/e4a0849e8d0bbd7ac87b

### 註釈(comment)
~~遠山ー＞演算
CPU内にはー＞XXXというCPUには
「(5)命令の実行」ー＞「(5)命令の実行」「(6)命令結果の格納」
「アセンブラはレジスタとメモリの間で行われるデータのやり取りを捜査する。」ー＞
「機械語はレジスタとメモリの間で行うデータのやり取りを~~(20180717修正済)~~操作する。」~~(20180719修正済)

いまどきのプログラマーがアセンブリを学ぶ意味ある？
https://qiita.com/Nekonecode/items/6819914396db9c925d47
覚書(notes)：
ハードウェアの不具合があった時、ソフトウェアの不具合があった時、機械語またはアセンブラがわかっていれば、切り抜けられることがある。（後日整理予定）

組み込み開発においてインラインアセンブラを挿入する際の2つの落とし穴
https://qiita.com/moricy/items/1c94f95fbbf9a90c7b3a
記録(record)：
どのCPUのアセンブラかの記載がない。

今すぐ辞めて欲しい、「高級言語勉強してます」
https://qiita.com/oskimura/items/84975b649caeef465b62

アセンブラーってなに？
https://qiita.com/bambooville/items/396cac019c31b33943ff

ざっくりアセンブラ入門
https://qiita.com/kazukichi/items/201b0c7fdf3d3aa576c7

>C言語などを作るための言語。

C言語は、C言語で書いています。アセンブラは、C言語などを作るための言語ではありません。アセンブラ自体で、電子計算機のありとあらゆる機能を制御できる命令の集まりです。他の言語だと、その電子計算機の特定の命令に対応した機能がない場合があります。その場合には、アセンブラで書いた関数などを呼び出したり、そのプログラムて実現することになります。
ざっくりというのは、概要を述べるのはいいのです。違うことを述べるのはざっくりとはいいません。
ではC言語との関係ではどうかけばよかったでしょうか。

「C言語で作ったプログラムを機械語に直した時に、それを人間でも理解できるように文字で起き直したもの。」
「C言語の機能にない機能を実現できる言語で、C言語でその機能を呼び出すことによって、あたかもC言語で実現したかのように見えるようにしてくれるもの」
いくらでも、ざっくり、核心をつくことはできます。

### 感想(impression)：
「ハーバード型では、プログラム（命令）を格納するメモリとデータを格納するメモリが別になっている。
家に冷蔵庫が２つある感じ。」に違和感。プログラムを格納するメモリは、項書き換えプログラムでない場合には出すだけで入れない。データは出し入れするので冷蔵庫の比喩は妥当。

## nasm(Netwide Assembler)
アプリケーションエンジニアのための低レイヤ入門
https://qiita.com/nirasan/items/3222827f1330a00f184c

nasmでprintf関数を使う
https://qiita.com/akakou/items/b3279b2de09b62261b7e

nasmで1~100まで数える
https://qiita.com/akakou/items/fb42e0dbfe9e5dc0a588

WindowsでNASMを使ってアセンブラを動かしてみる
https://qiita.com/0gajun/items/e772e1223f6e596eb362

書籍「低レベルプログラミング」アセンブリ実行 Docker 環境の構築
https://qiita.com/nirasan/items/0cd03c24a8e6d0e5f8be

アセンブリ言語でHello, World!
https://qiita.com/naoyoshinori/items/fb958e3c914c56baef40

[NASM/YASM] 4オペランドFMA命令を3オペランドに置き換えるマクロ
https://qiita.com/Seizh/items/070d29879037cb3faf41

64bitのOS + C言語でライブラリを使わずにHello Worldをしてみた
https://qiita.com/Juju_62q/items/2f4611461431a1110736

hello world Programの実行命令をバイトコードで確認する
https://qiita.com/knknkn1162/items/bea6d06d6b6009a9773d

## masm(macro assembler: Microsoft)
Assembly code and Assembler on Windows 10.　Windows 10でアセンブリ+ラして実行形式.exeを作成方法.
https://qiita.com/hogehoge990/items/6804b78770c247e32856

ズンドコキヨシ with MASMマクロ
https://qiita.com/fujitanozomu/items/9473ea40a61266588487

ズンドコキヨシ with x86アセンブラ
https://qiita.com/fujitanozomu/items/3fe0c5153c38920aaba1

## mac(apple)
Macでx86アセンブリ入門してみた
https://qiita.com/edvakf@github/items/1ae777fd7f5222b7c363

Mac でアセンブリを書いてみる
https://qiita.com/dora-gt/items/889a564ebd682fbe4257

Xcodeでx86アセンブリを書く
https://qiita.com/edvakf@github/items/39866dc891b94d22b7cb

Mac OSX Mountain Lion で 64bit(x86-64) アセンブリ言語の HelloWorld プログラム
https://qiita.com/donalsea/items/b7ed1c9feef1b570a6b9

Mac OSX の x86-64 のアセンブリ言語で，libc の puts 関数を呼び出すプログラム
https://qiita.com/donalsea/items/d393c6e2ac805016ee94

Clang初級
https://qiita.com/megane814/items/ef3f4f44eae31e0560a0

## With C/C++
アセンブラからｃの関数
https://qiita.com/ohisama@github/items/402d5db54b84b46516f5

アセンブラからｃの関数 その２
https://qiita.com/ohisama@github/items/e28a71654954865638ec

インラインアセンブラの読み方
https://qiita.com/yutakakn/items/8c1d06ffc079f55e7158

ちょっとだけアセンブラを触ってみる
https://qiita.com/edo_m18/items/095ca7c4a7c9b658ba37

C++の参照渡しとCのポインタの値渡しの違いをマシン語で比較してみた結果
https://qiita.com/tajima_taso/items/a62747739deee88078da

C言語のアセンブリ言語コード化〜直観編
https://qiita.com/zacky1972/items/86741d1ac6939795784f

アセンブリ言語のさわりを知ればC言語のポインタもわかるよね、という話
https://qiita.com/atworks/items/17da1973378a626e6467

c++とアセンブリ言語で画像を反転させてみる
https://qiita.com/wf9a5m75/items/a519d0f82fe1484179c5

インテルコンパイラで対応していない命令セットの組み込み関数を使った場合のアセンブリ
https://qiita.com/kaityo256/items/7da336428b81d8d8bf3b

IchigoJam で BASIC と C とアセンブラ速度比較と最適化あそび
https://qiita.com/fujitanozomu/items/a3473cf49d641e4a29d1

システムコールの呼び出し方メモ
https://qiita.com/kure/items/5a1a114f9a37aeab255c

Byte swapping(エンディアン変換)を理解する
https://qiita.com/tobira-code/items/a03f39a02678d80bbd26

## with Haskell
Haskellにインラインアセンブリを書く
https://qiita.com/tanakh/items/08c15f6e72dbe2da61a8

## 制作(making)
WhiteSpaceアセンブラ・逆アセンブラの紹介
https://qiita.com/angel_p_57/items/20295ee915ac59050c61

6章 アセンブラ
https://qiita.com/motoka1t/items/34da190a5d06e5691d5e

### 制作(making) @ohisama@github
アセンブラーを作る。
https://qiita.com/ohisama@github/items/dd8c2551f22c7219b90f

アセンブラーを作る。 その２
https://qiita.com/ohisama@github/items/0f774809edbbccdbcb8a

アセンブラーを作る。 その3
https://qiita.com/ohisama@github/items/a10198375145cfdf97b1

高位合成言語アセンブラを作る。
https://qiita.com/ohisama@github/items/04e2a51e4751279cd38b

高位合成言語アセンブラを作る。 その2
https://qiita.com/ohisama@github/items/a4fdd18bcc63c48b221f

高位合成言語アセンブラを作る。 その3
https://qiita.com/ohisama@github/items/1bdec7ceb62341e44df1

高位合成言語アセンブラを作る。 その4
https://qiita.com/ohisama@github/items/68951ce4d6ba7697f5d6

高位合成言語アセンブラを作る。 その5
https://qiita.com/ohisama@github/items/580a705c45d3c48384dc

高位合成言語アセンブラを作る。 その6
https://qiita.com/ohisama@github/items/e35eb633fbe27b7ba61e

高位合成言語アセンブラを作る。 その7
https://qiita.com/ohisama@github/items/5118b9daf110e7f41b8b

高位合成言語アセンブラを作る。 その8
https://qiita.com/ohisama@github/items/8e611fbeb6cecac1dd1e

高位合成言語アセンブラを作る。 その9
https://qiita.com/ohisama@github/items/de2e14ad8dc461895547

高位合成言語アセンブラを作る。 その10
https://qiita.com/ohisama@github/items/e77a631f007067a4d49a

高位合成言語アセンブラを作る。 その11
https://qiita.com/ohisama@github/items/515b0fce7ef64063d546

高位合成言語アセンブラを作る。 その12
https://qiita.com/ohisama@github/items/62d13197e9bcddff16c6

高位合成言語アセンブラを作る。 その13
https://qiita.com/ohisama@github/items/0dc1e76ea839a608ad4f

高位合成言語アセンブラを作る。 その14
https://qiita.com/ohisama@github/items/060c14672519e21a1d1e

高位合成言語アセンブラを作る。 その15
https://qiita.com/ohisama@github/items/f178211446b2bd679860

高位合成言語アセンブラを作る。 その16
https://qiita.com/ohisama@github/items/14a3d6862e27fd3d8557

高位合成言語アセンブラを作る。 その17
https://qiita.com/ohisama@github/items/8726cbeace0d37f6233d

高位合成言語アセンブラを作る。 その18
https://qiita.com/ohisama@github/items/7e5578175571db256a19

高位合成言語アセンブラを作る。 その19
https://qiita.com/ohisama@github/items/eb82fa7401773afc7b2a

高位合成言語アセンブラを作る。 その20
https://qiita.com/ohisama@github/items/6ddf275eb86e4e4c2aed

高位合成言語アセンブラを作る。 その21
https://qiita.com/ohisama@github/items/9d7f58a727e549607a00

高位合成言語アセンブラを作る。 その22
https://qiita.com/ohisama@github/items/c9e7d1f5e166f7307bf5

# 機械語(machine languate)

機械語
https://qiita.com/yanap/items/7c56386b1582e19823d1

PC-88 機械語で文字出力
https://qiita.com/Stosstruppe/items/1a1c07782d32ed3349fb

CPUの珍命令
https://qiita.com/okuoku/items/29e6395d5398a91c96ce

## stack machine
stack machine アセンブラ
https://qiita.com/ohisama@github/items/da1163f229d30f8e260e
stack machine アセンブラ　その2
https://qiita.com/ohisama@github/items/7d90e12699b5aeabdfad
stack machine アセンブラ　その3
https://qiita.com/ohisama@github/items/40d82a89d08264bd1809

## 機械語 @7shi 
### PDP-11(DEC)
PDP-11による機械語入門
https://qiita.com/7shi/items/86724696518df3a174dc

###  VAX(DEC)
VAXによる機械語入門
https://qiita.com/7shi/items/e43e8ce0b1a2cadee2a3

UNIX/32VによるVAX事始め
https://qiita.com/7shi/items/85c4a43a07152c4322d5#_reference-fa3e9049e19099ba526e

VAXの機械語を総当たり調査
https://qiita.com/7shi/items/7b24ed23fcbea08c3615

( Javaで300行程度の逆アセンブラ(VAX)
https://bitbucket.org/7shi/vax/src/tip/src/vax/Main.java )

### 8086(Intel)
8086による機械語入門
https://qiita.com/7shi/items/b3911948f9d97b05395e

### S/390(IBM)
S/390の機械語を総当たり調査
https://qiita.com/7shi/items/98c7aa38fe0bd29a7296

# 8 bit CPU。
## 6502(MOS Technology)
6502アセンブル/逆アセンブル
https://qiita.com/fuzzball/items/2a7f46937bf723e7b953

ファミコンエミュレータの創り方　- Hello, World!編 -
https://qiita.com/bokuweb/items/1575337bef44ae82f4d3#cpu

あこがれの6502: アセンブラ
https://qiita.com/kaizen_nagoya/items/0a9b701dce90cbbaf20f

## 6809(Motorola)
MC6809
https://qiita.com/kaizen_nagoya/items/4ec765eaa91d57671306

## H8(日立、ルネサス）
H8(アセンブラ）
https://qiita.com/kaizen_nagoya/items/49becae41a951fa136a1

## PIC(Peripheral Interface Controller), 8, 16, 32 bit
PIC命令
https://qiita.com/kaizen_nagoya/items/700544d1988d80d7003f

## AVR(Alf Egil Bogen, Vegard Wollan, RISC:Reduced Instruction Set Computer) by Atmel
AVR アセンブラ　命令セット
https://qiita.com/ohisama@github/items/90fc17064279901d0cd6

avrでsram
https://qiita.com/ohisama@github/items/bd56c7a678b435bd69ec

avrでeeprom
https://qiita.com/ohisama@github/items/dc4f9ceba5dc9decc0aa

avrでシリアル
https://qiita.com/ohisama@github/items/0806e8746403873a960e

ATTiny13でアセンブラ
https://qiita.com/yamori813/items/a267af6fd420faa7e030

### ardino/memos
arduinoでアセンブラ
https://qiita.com/ohisama@github/items/620b85d7fc71fa815a88

arduinoのasm命令でanalog readをする
https://qiita.com/crawd4274/items/8f8af1597698f0c5025a

Arduinoでインラインアセンブラ
https://qiita.com/TakeoChan/items/992026ec9e06337d97e7

wemosでアセンブラ
https://qiita.com/ohisama@github/items/883dc87506dcb60080a7

wemosでアセンブラ その2
https://qiita.com/ohisama@github/items/d2882a01ab72451c2272

## 8080(Intel)
intel 8080 アセンブラ　命令セット
https://qiita.com/ohisama@github/items/c66231c3367227b31cbc

i8080 アセンブラ
https://qiita.com/ohisama@github/items/d30c82ab4020fdd063ed

## Z80(Zilog)
PC-850VSでZ80アセンブラ（1） Hello, Worldする
https://qiita.com/miminashi/items/3cbe1ff1b67d2ec27950

Z80 アセンブラからCの関数を呼ぶ
https://qiita.com/zan/items/5d2af3ea62b1da5b2a63

Z80ボード
https://qiita.com/yamori813/items/917775ac94c1bd40d746

MacでX1のクロス開発（アセンブラ準備編）
https://qiita.com/mrbonze/items/1e403202dfabb0bba3fb

zcc インラインアセンブラ
https://qiita.com/Stosstruppe/items/ce4c0723712a5b7796de

ズンドコキヨシ with Z80アセンブラ
https://qiita.com/fujitanozomu/items/6dc50538814168947801

### Z80 @Stosstruppe
z88dkのz80asmでMSX用のキーマトリクス表示を作る。
https://qiita.com/Stosstruppe/items/e86d9f0f60ceadb8ea27

MSX z80asm
https://qiita.com/Stosstruppe/items/7ddf040ddac32290bb57

MSX screen8サンプル
https://qiita.com/Stosstruppe/items/a6c1b3a532bc89718903

MSX PSG
https://qiita.com/Stosstruppe/items/5866def3b7aa186bcdb7

MSX POSITサンプル
https://qiita.com/Stosstruppe/items/e3257876881ef32b56e3

MSX キーマトリクス
https://qiita.com/Stosstruppe/items/e86d9f0f60ceadb8ea27

MSX キーボードイベント
https://qiita.com/Stosstruppe/items/d211251cb439524cc856

MSX STRTMS
https://qiita.com/Stosstruppe/items/a14ee4d38d2f2a4ed5e7

### PC-6001 @ fuzzball
[[PC-6001] tips](https://qiita.com/fuzzball/items/40125e6ea64cfd8410c2)
https://qiita.com/fuzzball/items/40125e6ea64cfd8410c2

[[PC-6001] カートリッジから起動する]
(https://qiita.com/fuzzball/items/d68b99cdf362470d93ee)
https://qiita.com/fuzzball/items/d68b99cdf362470d93ee

[[PC-6001] キー入力 & ジョイスティック入力]
(https://qiita.com/fuzzball/items/246dd6bcc2b20613dd68)
https://qiita.com/fuzzball/items/246dd6bcc2b20613dd68

[PC-6001] 2msタイマー
https://qiita.com/fuzzball/items/2f8915a7640606514f29

[PC-6001] キークリック音のON/OFF
https://qiita.com/fuzzball/items/25106a26545a808868cb

[PC-6001] ポート$B0
https://qiita.com/fuzzball/items/27ef8bed0eb2d44d40bb

[PC-6001] メモリマップ
https://qiita.com/fuzzball/items/7b46657ee1dc7e919a09

[PC-6001] PSG制御
https://qiita.com/fuzzball/items/403402e3ea395b905348

[[P6MK2VGA] リファレンス]
(https://qiita.com/fuzzball/items/8efa77a86351e5111db8)
https://qiita.com/fuzzball/items/8efa77a86351e5111db8

### CHIP-8
Rustで書いたCHIP-8エミュレータを wasm, React でブラウザで動かす(Rust側の処理編)
https://qiita.com/bto/items/35e9d2131b735d3210bd

chip8 アセンブラ　命令セット
https://qiita.com/ohisama@github/items/a4f75c8cbe630ba6ed56

jsdoでchip8
https://qiita.com/ohisama@github/items/9882de2ca3d1966c2a61

jsdoでchip8　その２
https://qiita.com/ohisama@github/items/fe537589263cb2c40e24

jsdoでchip8　その3
https://qiita.com/ohisama@github/items/458fbf361d3e59bd438f

# 16bit CPU
## PDP11(Programmed Data Processor:DEC)
アクティブパターンでPDP11のディスアセンブラを作る
https://qiita.com/h_sakurai/items/bedd794f39db6c6a0ea5

「文字列の終端はなぜヌルなのか 」を考察する
https://qiita.com/hironiwasm/items/60a00220c3d0de2cdc9a

## CAP-X(Comp-X Assemble Program:IPA)
https://qiita.com/kaizen_nagoya/items/62bea84a494e98178223

## CASLII(Comet Assemble Language:IPA)
情報処理技術者試験をアセンブラで受験した者です。
数十年前、PC-VAN(NECのパソコン通信サービス）でACOS(NECのメインフレーム） Clubのサブシスをしていた頃の話です。COBOLでCASLのアセンブラ・シミュレータを作られた方があり、配布に協力していたことがあります。当時は、COBOLでアセンブラが作れることを知り、目から鱗でした。よく考えてみれば、文字処理が得意で、変換すればいいのだからできたものを見せてもらうと納得感がありました。CASLは小規模な系なので、役に立つ、立たないの二つの意見は拮抗するかもしれません。

私はCASLは役に立つ派です。CASLが役に立つというか、情報処理技術者試験を受けるのにCASL以外の選択肢は思い当たりませんでした。計算機は記憶するのが嫌いで計算機に記録させるために仕事にしています。CASLは仕様を試験時に配ってもらえました。仕様を覚えなくてはいけない他の言語は選択肢にはなりません。

どんな言語を学ぶのであれ、情報処理試験の科目にない言語をお使いの方には、CASLのアセンブラ・シミュレータを作ることをお勧めしています。自分が得意な言語の技が磨けることと、試験に受かることの一挙両得という説明を差し上げるようにしています。自分がもう受験しないために、自分では作っておらず心苦しいですが、、、。

CASLとCOMETのfull spellingを探しています。ご存知の方はご教授くださると幸いです。

最強のCASL2/COMET2環境
https://qiita.com/Maxfield_Walker/items/9f75cc16f938f2cd1844

ScalaでCASLIIとCOMETIIの実装してみた感想
https://qiita.com/matsutomu/items/bbf48ed8c48f6529f68a

C言語の勉強がてら、CASL II処理システムを実装した話
https://qiita.com/j8takagi/items/2db31b073cf1fbfd492f

「C言語で作るCPUエミュレータ」ダウンロードサイトがリンク切れ。
（紹介記事の一部は現在もある。http://coin.nikkeibp.co.jp/coin/itpro/hansoku/pdf/nsw200902_2.pdf）
（　CASLIIのアセンブラとCOMETIIのシミュレータJAVA版はhttp://fry.no.coocan.jp/lecture/OS/cpuemulator.html ）

DartでつくるCASL2逆アセンブラ
https://qiita.com/tatsu/items/2471b1f571b4a183c53f

「増やす減らす二倍する」をCASL IIで(横へな13参考)
https://qiita.com/pazworld/items/c7e31e73af1ef33c5b4a

CASL IIで遊ぶ 環境構築メモ
https://qiita.com/GakuYasui/items/dc2effb767ba7600c52a

Scala上でアセンブリでFizzBuzz
https://qiita.com/opengl-8080/items/175446822197eb727125

## M16C(三菱、ルネサス）
M16C（アセンブラ）
https://qiita.com/kaizen_nagoya/items/d8a9b27bc78b23eabe0d

## 68000(68K:Motorola)
MC68000
https://qiita.com/kaizen_nagoya/items/77a5f1ada6776ed6651b

## x86(Intel)
DOSプログラムをクロス開発
https://qiita.com/yamori813/items/5b68f493a0d384c2d135

アセンブラを理解したいのならアセンブラを学べ（INT 21Hもあるよ）
https://qiita.com/tmiki/items/7866f6db9344ced8d5bb

16.05.24 アセンブリ言語の概要
https://qiita.com/shiiiiiiiii1/items/709b0240bfaef99be617

NOP WORD PTR?
https://qiita.com/jkr_2255/items/eaca341a80df845ef667

アセンブラに手を出してみる
https://qiita.com/edo_m18/items/83c63cd69f119d0b9831

ためしておぼえるアセンブラ入門
https://qiita.com/nirasan/items/65e8107ae21fcc36d0c9

アセンブラ学習log_1
https://qiita.com/diggymo/items/fe56f6ea357e5928a8ca

Intel 8086 CPU 基礎
https://qiita.com/timwata/items/e7b7a18cc80b31fd940a

x87命令を使ってみる
https://qiita.com/kaityo256/items/1b59222e538335904b1c

x87 instruction setを使う
https://qiita.com/tobira-code/items/be9982c9a084b57182db

x86の浮動小数計算とSIMD命令の変遷
https://qiita.com/lpha_z/items/eafa9c13532c9ac80d4b

# 32 bit
## NIOSII(Altera)
NIOSII(アセンブラ)
https://qiita.com/kaizen_nagoya/items/0101045dfb6ad56fdc03

## MicroBraze(Xilinx)
MicroBlaze(アセンブラ)
https://qiita.com/kaizen_nagoya/items/57de0bebe1f0b6e97f66

## SH(Super H(hitachi?), 日立、ルネサス）
SH(アセンブラ）
https://qiita.com/kaizen_nagoya/items/de92c2b287cb0ecdbf06

## IA32-x86(intel)

C言語を理解したいのならアセンブラを学べ(ただしINT 21Hは出てこない)

https://qiita.com/SoraKumo/items/0cdde47442e777d15008

IA32（x86）汎用命令対応のアセンブラ実装方法(1)
https://qiita.com/hiroyuki-nagata/items/ec0f47df595631e41c5c

IA32（x86）汎用命令対応のアセンブラ実装方法(2)
https://qiita.com/hiroyuki-nagata/items/42ba3d797f8e29726bde

アセンブラ(32bit)でhello world
https://qiita.com/DQNEO/items/d450a3c43f55b79f292b

アセンブリ言語で様々なアーキテクチャ向けのHello,Worldプログラムを書こう！という話。
https://qiita.com/furandon_pig/items/8124979604ad97f544a4

ブートストラップローダ領域でHello, World!
https://qiita.com/naoyoshinori/items/4f4850e721851ea5dc63

「はじめて読む486」を読んでみました。
https://qiita.com/saruo@github/items/38766661898fc2669669

ハードウェア乱数 RDRAND命令の使い方
https://qiita.com/Seizh/items/3e55b04e62d66808fd03

256-bit AVXのvpalignrについて
https://qiita.com/Seizh/items/94dda8c5b1724640af28

第一回 x86バイナリ入門
https://qiita.com/d-kami/items/603ad46184c7d6d44191

MMX, SSE, AVX, FMA命令とは何かを明らかにしたい会
https://qiita.com/alpacatom/items/5daf3bc703f26304241d

gasでx86アセンブラ(メモ)
https://qiita.com/drib__/items/cf4e31a05ccabc93a3ca

### paiza(web compiler)
paizaでアセンブラ
https://qiita.com/ohisama@github/items/4adf841cda18142c7c07

paizaでアセンブラ その2
https://qiita.com/ohisama@github/items/db660d1f50c863fba9e9

paizaでアセンブラ その3
https://qiita.com/ohisama@github/items/93e1a436cc2af98ca08d

paizaでアセンブラ その４
https://qiita.com/ohisama@github/items/4aedca35dc565fe92aca

paizaでアセンブラ その５
https://qiita.com/ohisama@github/items/ad546a10f706a4ce4f57

paizaでインラインアセンブラ
https://qiita.com/ohisama@github/items/c152dd85f482901f25fb

paizaでインラインアセンブラ その２
https://qiita.com/ohisama@github/items/6dd8451fa8689806dbc4

paizaでインラインアセンブラ その3
https://qiita.com/ohisama@github/items/bd75347f8bf621805531

### Linuxでx86アセンブラ by @MoriokaReimen 

1. Linuxでx86アセンブラ(道具編) 2015年11月05日に投稿
http://qiita.com/MoriokaReimen/items/b316a68d76c1eafa18f8

2. Linuxでx86アセンブラ(Cとの連携編)2015年11月07日に投稿
http://qiita.com/MoriokaReimen/items/590a4ddb3de15bfacb4b

3. Linuxでx86アセンブラ(四則演算編)2015年11月14日に投稿
http://qiita.com/MoriokaReimen/items/4853587dcb9eb96fab62

4. Linuxでx86アセンブラ（論理演算編） 2015年11月20日に投稿
http://qiita.com/MoriokaReimen/items/bf863585616ad0a0a969

5. Linuxでx86アセンブラ（基本的なコードの構造編）2015年11月27日に投稿
http://qiita.com/MoriokaReimen/items/b320e6cc82c8873a602f

6. Linuxでx86アセンブラ（スタック編）2015年11月28日に投稿
http://qiita.com/MoriokaReimen/items/31a8f8ce4a46ba0f3590

7. Linuxでx86アセンブラ（マクロ編） 
http://qiita.com/MoriokaReimen/items/45abbb6c2938abd505ff

8. Linuxでx86アセンブラ（条件分岐編）2015年12月09日に更新 2015年12月02日に投稿
https://qiita.com/MoriokaReimen/items/66b8c0e3b2ef1d2993bb#_reference-46d6608629b00ae42268

9. Linuxでx86アセンブラ（BCD編）
https://qiita.com/MoriokaReimen/items/f66329680e98022c6bab#_reference-322a00be9111ce80868b

10. Linuxでx86アセンブラ（浮動小数点編）2015年12月17日に投稿
https://qiita.com/MoriokaReimen/items/8d3b0dddcc2a77ecdfa5#_reference-d9eb740d133b784b89d2

### LJの力計算をフルアセンブラで書いてみる @kaityo256
LJの力計算をフルアセンブラで書いてみる
https://qiita.com/kaityo256/items/03e0240af4e9a6469bcb

LJの力計算を組み込み関数で書いてみる
https://qiita.com/kaityo256/items/03e0240af4e9a6469bcb

LJの力計算を組み込み関数で書いて馬鹿SIMD化
https://qiita.com/kaityo256/items/bf10fdb0f90809e3d2bf#_reference-1a416859bca0af6833d1

LJの力計算のSIMD化(たぶん完結編)
https://qiita.com/kaityo256/items/caf4b8458a6bc292b4cc#_reference-f28b72ab183513e81718

LJの力計算のSIMD化ステップ・バイ・ステップ その0
https://qiita.com/kaityo256/items/5be3ce71a6ff9522a0e6#_reference-5b7317570ce3058cf132

LJの力計算のSIMD化ステップ・バイ・ステップ その1
https://qiita.com/kaityo256/items/4d34bf144122b78fcf49

LJの力計算のSIMD化ステップ・バイ・ステップ その2
https://qiita.com/kaityo256/items/e6c41b94c5cc5189c5cc

LJの力計算のSIMD化ステップ・バイ・ステップ その3
https://qiita.com/kaityo256/items/7f16ab7f2281bb03e83e

LJの力計算のSIMD化ステップ・バイ・ステップ その3.5
https://qiita.com/kaityo256/items/b145b2d83becccd0aa53

LJの力計算のSIMD化ステップ・バイ・ステップ その4
https://qiita.com/kaityo256/items/636c5a407f5a6c61bb21

LJの力計算のSIMD化ステップ・バイ・ステップ その5
https://qiita.com/kaityo256/items/dacbe5a16abbc83eb107

LJの力計算のSIMD化ステップ・バイ・ステップ その6
https://qiita.com/kaityo256/items/34c371c6d040be1bdc30

## ARM(Advanced RISC Machines)
[アセンブラ] ARMの仕様を見てみる
https://qiita.com/edo_m18/items/a7c747c5bed600dca977

ARM Thumb 16-bit アセンブラ　命令セット
https://qiita.com/ohisama@github/items/58e2a8f62221cd520ace

ARMv7-MのNOP命令
https://qiita.com/eggman/items/4f365b56cd51965834c0

ARMアセンブリ言語の実装色々とNEON命令のサンプル
https://qiita.com/take-iwiw/items/cea0a2cb4d2709cb7ee5

raspberry pi 1 model bで、アセンブラ
https://qiita.com/ohisama@github/items/5371bb13d07ec6440f59

ARMアセンブリ言語でRGBA->HSVに変換してみた件
https://qiita.com/wf9a5m75/items/33442009d51a0c899333

ARM 関数呼び出し引数の渡し方
https://qiita.com/eggman/items/39e02a1ff9b772fcdb63

objdumpでARM-v7Mのバイナリを逆アセンブル
https://qiita.com/eggman/items/f9de9ffa318db0f39043

armでアセンブラ
https://qiita.com/ohisama@github/items/a0bf66d99f27219f750a

### Raspberry PI
raspberry pi 1 model bで、アセンブラ　その1
https://qiita.com/ohisama@github/items/5371bb13d07ec6440f59
raspberry pi 1 model bで、アセンブラ　その2
https://qiita.com/ohisama@github/items/5a5a7ee49287622ddff8
raspberry pi 1 model bで、アセンブラ　その3
https://qiita.com/ohisama@github/items/1acbc8cb9642adffc868

QEMUでRaspberry Pi 3のUARTをベアメタルで動かす
https://qiita.com/eggman/items/045bf5525fcf78209b79

QEMUのRaspberry Pi 3モデルでコアを識別する
https://qiita.com/eggman/items/96750a3e849d5562fcc6

## V850(Renesas:Renaissance Semiconductor for Advanced Solutions)
### athrill @kanetugu2018

athrill(アスリル)機能マニュアル
https://qiita.com/kanetugu2018/items/cf3dea16710a3f0737e8

athrill(アスリル)機能マニュアル(起動オプション)
https://qiita.com/kanetugu2018/items/5a1a6658ca710f5b97ff

athrill(アスリル)機能マニュアル(パラメータ)
https://qiita.com/kanetugu2018/items/ff50704ed7436e0a20db

athrill(アスリル)機能マニュアル(外部入出力)
https://qiita.com/kanetugu2018/items/399f652e76532599fa04

athrill(アスリル)機能マニュアル(問題の早期検出機能)
https://qiita.com/kanetugu2018/items/d63314b018bdb7d28e07

athrill(アスリル)機能マニュアル(データアクセス制御)
https://qiita.com/kanetugu2018/items/516fa086f52558d6f3ad

メモリ保護対応版 athrill(アスリル) のご紹介
https://qiita.com/kanetugu2018/items/f2205475c4a4eae699c0

athrill(アスリル) を使用して TOPPERS OS(ASP3) をデバッグ
https://qiita.com/kanetugu2018/items/1f2ef93c9e1fa7a29f97

athrill(アスリル) を使用してベアメタル・プログラミング(１回目：main関数が動き出すまで)
https://qiita.com/kanetugu2018/items/7d2ce8def53cb9bda06b

athrill(アスリル) を使用してベアメタル・プログラミング(2回目：割り込みがソフトウェアに通知されるまで)
https://qiita.com/kanetugu2018/items/8cb411717511ca96bc64

マルチコア対応仮想環境(athrill)を使用して TOPPERS/ATK2 を実行する
https://qiita.com/kanetugu2018/items/b43c5715124f42a0393d

athrill(アスリル) を使用して TOPPERS OS(ASP3) をデバッグ
https://qiita.com/kanetugu2018/items/1f2ef93c9e1fa7a29f97

athrill(アスリル)を使用してC言語ポインタ変数を理解する
https://qiita.com/kanetugu2018/items/b9ad84c2f74324174864

TOPPERS/TTSPをathrillで動作させる(作成中)
https://qiita.com/kanetugu2018/items/ac2f73529feef41c0c0d

TOPPERS/TTSPをathrillで動作させる(TTSP のターゲット依存コードを実装する)
https://qiita.com/kanetugu2018/items/43fdcb578f1d9c1dcbcb

## SPARC(Sun)
SPARC Assembly Language
https://qiita.com/kaizen_nagoya/items/4f084f63eb0420d7b3b3

## powerPC(IBM)
PowerPCアセンブリ チートシート
https://qiita.com/kitayuta/items/ad7bde187a3509de020b

PowerPC(アセンブラ）
https://qiita.com/kaizen_nagoya/items/1e7741b1a59b3a31416f

## MIPS(Microprocessor without Interlocked Pipeline Stages)

MIPS-32のレジスタ一覧
https://qiita.com/drib__/items/ff2f962367390fc59221

アセンブリ言語(MIPS)でソート
https://qiita.com/mpyw/items/c45ec2b80303ce40d7cf

自作CPUを創る際に効率よくテストケースを準備する方法
https://qiita.com/varmil/items/be190fe50516c52aab3e

MIPS(アセンブラ)
https://qiita.com/kaizen_nagoya/items/f8247a26ffb801b2beb6

mipsのアセンブラ
https://qiita.com/yamori813/items/cd5caac549d246f1930d

## RISC-V
RISC-Vのアセンブリ記述
https://qiita.com/eggman/items/5105e2a3351dd83be19e

risc-v アセンブラ　命令セット
https://qiita.com/ohisama@github/items/0f0a269687dd87e17533

RISC-Vを使用したアセンブリ言語入門 〜1. 環境構築編〜
https://qiita.com/widedream/items/c135df3277599fa8ebba

RISC-Vを使用したアセンブリ言語入門 〜2. アセンブリ言語を見てみよう〜
https://qiita.com/widedream/items/15dbe3a2203811fa7297

RISC-V(RV32I)のアセンブリから機械語への翻訳(簡易)
https://qiita.com/a163236/items/1ea950f743457ede5d0b

# 64bit CPU
64bitCPUへの道 and/or 64歳の決意(0)
https://qiita.com/kaizen_nagoya/items/cfb5ffa24ded23ab3f60

64bitCPUへの道 and/or 64歳の決意(2)32bitと64bitの違い
https://qiita.com/kaizen_nagoya/items/1763b20c607260ea2c3e

RISC-V のカスタム命令をインラインアセンブリで出力する方法
https://qiita.com/syumiwohossu/items/b47ec42c3636d1669181

## x64:64bit x86(Intel)
64ビット CPU の遊び方
https://qiita.com/tadnakam/items/4894ec3394ba57a8328a

strcmp をx64アセンブラで実装してみる
https://qiita.com/cirno999/items/6811c50f2c2e1518b468

x86-64プロセッサでGNU assemblerを使う
https://qiita.com/tobira-code/items/ac3169200160566c35af

x86-64プロセッサのスタックを理解する
https://qiita.com/tobira-code/items/75d3034aed8bb9828981

x86-64プロセッサでGNU assemblerを使う
https://qiita.com/tobira-code/items/ac3169200160566c35af

assemblyからhello world programを追いかける
https://qiita.com/knknkn1162/items/c67ae7c2ef71a713adf8

[ Windows ] 実行ファイルが32ビットか64ビットか確認する方法
https://qiita.com/oyan29/items/1f0b5d227765115b24f0

x64の関数呼び出し
https://qiita.com/FAMASoon/items/a93c1361f80bb28f895c

システムコールの呼び出し方メモ
https://qiita.com/kure/items/5a1a114f9a37aeab255c

独断と偏見によるx86命令拡張の印象
https://qiita.com/tanakmura/items/1af3ee8aeee6940d199b

x64 アセンブリ　命令一覧
https://qiita.com/ohisama@github/items/3b3bac49ca8be5aa1b36

Crystalでインラインアセンブラ
https://qiita.com/kubo39/items/793871edf4bdcb0dd259

## arm64(ARM)
64bitは苦手。IntelでもArmでも、、、。

aarch64でEL (Exception Level)を変更する
https://qiita.com/eggman/items/e500ecb33f8f126c0052

arm64(aarch64)のLinuxカーネルをQEMU上でgdbデバッグする
https://qiita.com/takeoverjp/items/5df8e17f0c361ecd3563

Linux/arm64のブートプロセスについてのメモ
https://qiita.com/peo3/items/45063ab7ca27af69668b

ARM64のsemihosting機能をQEMU上で試してみる
https://qiita.com/takeoverjp/items/08fcfcac655c0b60931b

Raspberry Pi 3で FreeBSD(ARM64) を動かす
https://qiita.com/s_mitu/items/12aa53d534073489cabc

Raspberry Pi 3 で 公式 arm64 Debian を動かす
https://qiita.com/ysugi/items/04122e3b1792d872a182

@tkato さんからの紹介
(Linux で Arm64 アセンブリプログラミング (00) https://www.mztn.org/dragon/arm6400idx.html)

(QEMU の Virtボード( AArch64対応Cortex-A53)で動作する SSPカーネルの依存部コード
http://dev.toppers.jp/trac_user/contrib/wiki/ssp_aarch64)

# 比較(compare)
4bit TD4と32bit RISC-V RV32Iの実装の比較
https://qiita.com/asfdrwe/items/71ef190f0b602741a1e5

オープンソースのCPUの除算性能 RISC-V vs ICF3-Z
https://qiita.com/izuna/items/da289b803bbadc8de4d9

# 除虫(debug)
YoctoベースのLinux上での統合開発環境を使ったデバッグ方法
https://qiita.com/ambai/items/85df065bc1d7706ab2fa

## debug(MS-DOS 16bit)
MS-DOS 基本コマンド
https://qiita.com/timwata/items/8414f163607cc7aca473

debugコマンド(MS DOS)
https://qiita.com/kaizen_nagoya/items/31542d281d16d135df66

[スクリプト言語しか書けないあなたへ]FreeDOSとdebugコマンドで8086アセンブラ入門
https://qiita.com/usk83/items/c97066c3c663c5007658

MacintoshでMS-DOSのdebugコマンドの動作確認をするのにどうしたらいいか迷っていた。
https://qiita.com/kaizen_nagoya/items/206eb5b219f2b65514de

Win32アプリでx86命令を直接実行させる
https://qiita.com/gdrom1gb/items/acf1db020839df89e6e3

x86のデバッグレジスタを使ってみたらQEMUが固まる
https://qiita.com/kaityo256/items/73bfa919af1b8b6fd77b

## gdb(GNU)
gdb超入門
https://qiita.com/miyagaw61/items/4a4514e2de0b458c2589

gdb-peda超入門
https://qiita.com/miyagaw61/items/248a486cca671686c58c

アセンブラをgdbで取り扱う
https://qiita.com/uyuni/items/69323711e69d14eee1a9

ESP32 を AE-FT2232 でつないで OpenOCD+GDBでデバッグ
https://qiita.com/rukihena/items/d530e2751cb258b4eab3

VSCodeでTOPPERSのコードをgdbデバッグする
https://qiita.com/mitsu48/items/5c6fec6064af6c4a2c4e

### gdb with docker
DockerをGDBでデバッグする
https://qiita.com/xylnao11/items/461d1d7908300041b26f

Dockerコンテナにgdbによるデバッグ環境の構築
https://qiita.com/kutsurogi194/items/16e0546c927075fc4409

デバッグ用の Docker バイナリを作り Docker 内 GDB で実行する
https://qiita.com/knaka/items/40be1e1ce0cf9189fde8

書籍「低レベルプログラミング」アセンブリ実行 Docker 環境の構築
https://qiita.com/nirasan/items/0cd03c24a8e6d0e5f8be

Docker内で segmentation fault するプロセスのcoreを取って調べる方法
https://qiita.com/m_mizutani/items/d60e83745baaeb7e83fc

「名古屋のIoTは名古屋のOSで」Dockerをどっかーらどうやって使えばいいんでしょう。TOPPERS/FMP on RaspberryPi with Macintosh編 ５つの関門
https://qiita.com/kaizen_nagoya/items/9c46c6da8ceb64d2d7af

### gdb on mac
OSX High Sierra で gdb を使おうとしたらエラー
https://qiita.com/longtime1116/items/30a49a80749776c4875f

Mac OS XでGDBのrecordが使えなかった話
https://qiita.com/noelco_bot/items/8ac1fb43a4092897bd2d
OS X に brew で gdb をインストール
https://qiita.com/melos/items/624f5fdc1d05c83a6e5e

Mac OS X 10.12 (Sierra) + gdb でコード署名を確認しろと怒られる
https://qiita.com/cuminseed/items/9e3eb83efe25f3ef6f77

Mac OSX(Mavericks)でgdbを使う
https://qiita.com/tattsun58/items/c39dae23d9797ff23186

mac OS 10.13(High Sierra) で Eclipse のデバッグに gdb を使う
https://qiita.com/yuzu_afro/items/17111ff1655116aa0a96

### gdb リモートデバッグ @tetsu_koba 
組み込みLinuxでリモートデバッグするときのgdbのセットアップ方法
https://qiita.com/tetsu_koba/items/72361225f759122dcd57

gdbのリモートデバッグのextended-remoteモードを試す(1)
https://qiita.com/tetsu_koba/items/edaf8a5bcdd36d677c1c

gdbのリモートデバッグのextended-remoteモードを試す(2)
https://qiita.com/tetsu_koba/items/dd7c5a0beb7a8742d875

gdbのリモートデバッグのextended-remoteモードを試す(3)
https://qiita.com/tetsu_koba/items/ebbac47e3fb43c86f412

ARM Linuxのリモートデバッグ用にgdb 8.0.1 をソースからビルドする
https://qiita.com/tetsu_koba/items/ddf93510b1f0997a8cd2

## Eclipse debugger
Eclipse CDT での Debugger [忘備録]
https://qiita.com/t-tkd3a/items/39d9f9f64b6707332cbd

Eclipse debug 起動時エラー
https://qiita.com/kws9/items/2b54b757473dcfa1995a

Eclipse CDT で log4cppのサンプルコードをデバッグしてみる
https://qiita.com/0ashina0/items/0c0e6321852cf85bf885

EclipseでクロスコンパイルしてリモートのRaspberry Piで動かす
https://qiita.com/kazz12211/items/23cd36b5aaf7322417c0

# 逆組立器(dis assembler)
生バイナリデータを逆アセンブル(IA-32,x64)
https://qiita.com/yohhoy/items/7d281f22ca439152ce12

dumpbin.exeで吐かれる逆アセンブルの結果を解析する
https://qiita.com/yumetodo/items/3c20f7c25eedbf41d63a

Haskellによる8086逆アセンブラ開発入門
https://qiita.com/7shi/items/026839b2bc193dbfb0cb

【解答例】Haskellによる8086逆アセンブラ開発入門
https://qiita.com/7shi/items/6d228b6fc4734f48a33e

複数の処理系で逆アセンブルして比較
https://qiita.com/7shi/items/d503c83c1befe1cdb284

密行列積演算高速化と科学計算ライブラリについて(objdump)
https://qiita.com/higucheese/items/062591dbad8d15cdef06

「項書き換え機能付きプログラム」のディスアセンブラの作成
https://qiita.com/kaizen_nagoya/items/8b8fe645b06bc7eccefb

## リバースエンジニアリングへの道 @deta-mamoru
リバースエンジニアリングへの道 - その1
https://qiita.com/deta-mamoru/items/5170f1b4ecab74b09c85

リバースエンジニアリングへの道 - その2
https://qiita.com/deta-mamoru/items/89528757351a43e32526#_reference-3b10d22cf38e9d1e75a7

リバースエンジニアリングへの道 - その3
https://qiita.com/deta-mamoru/items/d9f2c2de6072c5f8a292#_reference-141d7ffcd6a1a5499717

リバースエンジニアリングへの道 - その4
https://qiita.com/deta-mamoru/items/7e8071f0b8f57d09fe1b#_reference-f859d80834d2bd526f5a

バースエンジニアリングへの道 - その5
https://qiita.com/deta-mamoru/items/31fd5b5ddef2a74376d4#_reference-d4584059e1dad626e2f8

リバースエンジニアリングへの道 - その6
https://qiita.com/deta-mamoru/items/66c813aa9a77cd662500#_reference-d2210c7bee458f3db31a

リバースエンジニアリングへの道 - その7
https://qiita.com/deta-mamoru/items/e7b54392c60631b9dbcd#_reference-8ca64d95c67619235c8c

リバースエンジニアリングへの道 - その8
https://qiita.com/deta-mamoru/items/1e032d36b1edb1a69fd0#_reference-2869ffc12f781d03ad4e

リバースエンジニアリングへの道 - その9
https://qiita.com/deta-mamoru/items/7832af6c47359639df61#_reference-c82ddb91b0c7af384ac0

リバースエンジニアリングへの道 - その10
https://qiita.com/deta-mamoru/items/d9582d5c0d3fe7d61f85

## 連結器(linker)
動的なリンカ
https://qiita.com/saikoro-steak/items/5d90ae34b61c16f6b3cf

## LLVM IR 
Ruby -> Julia -> LLVM IR -> たのしい
https://qiita.com/remore/items/40bcea76d14b39f8103f

PythonでLLVM IRを出力してみた
https://qiita.com/ksakiyama134/items/77c0401126cb373b2830

LLVMに実行可能コードの生成をまかせたい
https://qiita.com/k2ymg/items/653c5b22b74a091be604

Orelang(俺言語) の LLVM IR コンパイラを作ってみた
https://qiita.com/soramimi_jp/items/b7a0a9de381f3c320fe6

## bitcode
LLVM bitcode基礎知識
https://qiita.com/gamako/items/f37dbb05de9d3832ce6b

Xcode7でのembed-bitcodeオプション
https://qiita.com/gamako/items/4ebfd048c5aed4f68595

XcodeでArchive以外のビルド結果にはbitcodeが埋め込まれない
https://qiita.com/gamako/items/66d3a8164678e525a26e

[iOS]bitcode対応のlibrary/frameworkを作成する
https://qiita.com/noir/items/e2f4a3c5ea88a2677846

Bitcodeを有効にしたらCrashlyticsでmissing dSYMsと表示される
https://qiita.com/monoqlo/items/59c304672304a0b94c86

Bitcode対応版Google Analytics SDKをCocoapodsで入れる方法
https://qiita.com/Apuruny/items/9cf7ca083f2fb949ea9f

invalid bitcode signatureの対処法
https://qiita.com/miutex/items/d50bae8cd472738d2562

Xcode7でbitcodeのエラーが出た
https://qiita.com/imanishisatoshi/items/8b64af8262d7fe2eb2ba

## WebAssembly
WebAssemblyが熱い
https://qiita.com/kenju/items/3ec95aebd30bc95b862c

ゼロからはじめるWebAssembly入門(2017/01更新)
https://qiita.com/OMOIKANESAN/items/1ffc06ef6283befc4355

WebAssemblyを使ってみる(C/C++をWebAssemblyに変換してChromeで実行)
https://qiita.com/Hiroki_M/items/89975a9e8205ced3603f

【2017年4月版】WebAssemblyとは？〜実際にC言語をブラウザで動かす〜
https://qiita.com/umamichi/items/c62d18b7ed81fdba63c2

サクッと Go → WebAssembly を試す
https://qiita.com/cia_rana/items/bbb4112b480636ab9d87

なぜWebAssemblyはasm.jsより速いのか
https://qiita.com/chikoski/items/cd59df64b4d820125864

node v8.0.0でWebAssembly試してみる
https://qiita.com/ukyo/items/996ab5087b63f1798029

WebAssemblyで実装された仮想DOM asm-dom でWeb Componentsを使ってみた
https://qiita.com/kwst/items/1571c6302bb6160d9b51

WebAssemblyで実装された仮想DOM asm-dom をさわってみた
https://qiita.com/kwst/items/e8a2505ec20c5021087b

WebAssemblyを試してみた
https://qiita.com/pnlybubbles/items/0410e978afce647cf0b6

Emscriptenで過去に作った物をwasm対応して性能比較してみた
https://qiita.com/toyoshim/items/e714cb4d00eace2f4d97

WebAssembly事始め（Chrome57記念）
https://qiita.com/ymtszw/items/5b7503b1b550f352ea8a

Julia で WebAssembly
https://qiita.com/yasudakinenbi/items/545c283d83c04d1f9a32

MacOSXでWebAssemblyを触ってみた
https://qiita.com/rsnni/items/c795e0b80d40e6f17ecd

## Rust
RUST入門
https://qiita.com/kaizen_nagoya/items/b3a42bf5a849dabe52c5

## by GO
プログラミング言語の作り方 〜 Go によるアセンブラ、バーチャルマシン、コンパイラの実装
https://qiita.com/nirasan/items/cb1f79955f31c45c6658

## by python
pythonでx86コンパイラ自作
https://qiita.com/s0sasaki/items/0b0d96838685fa290126

pythonでx86コンパイラ自作(スタック指向言語編)
https://qiita.com/s0sasaki/items/3651837a9a52f20ce2c6#_reference-fe4b65d00a02d3eae1ac

# 参考資料(reference)
31バイトでつくるアセンブラプログラミング　～アセンブラ短歌の世界　坂井弘亮
https://www.amazon.co.jp/dp/B00ICKLC2U/

大熱血-アセンブラ入門-坂井弘亮
https://www.amazon.co.jp/dp/4798051543/

（大熱血！アセンブラ入門 サポートページ
　http://kozos.jp/books/asm/）

リンカ・ローダ実践開発テクニック―実行ファイルを作成するために必須の技術-COMPUTER-TECHNOLOGY 坂井弘亮
https://www.amazon.co.jp/dp/4789838072/

0と1のコンピュータ世界-バイナリで遊ぼう！　坂井弘亮
https://www.amazon.co.jp/dp/B00JTQM798/

12ステップで作る組込みOS自作入門　坂井弘亮
https://www.amazon.co.jp/dp/4877832394

31バイトでつくるアセンブラプログラミング　～アセンブラ短歌の世界～
坂井弘亮, 愛甲健二, 松田和樹, 坂井丈泰, 竹迫良範
https://www.amazon.co.jp/dp/B00ICKLC2U

（参考URLアセンブラ短歌　http://kozos.jp/asm-tanka/）

30日でできる-OS自作入門　川合秀実
https://www.amazon.co.jp/dp/4839919844/

Code Complete
https://www.amazon.co.jp/dp/B01E5DYK1C/

プログラミング言語教育のXYZ
https://qiita.com/kaizen_nagoya/items/1950c5810fb5c0b07be4
プログラミング言語教育のXYZ(youtube)
https://www.youtube.com/watch?v=He1_tg4px-w&t=486s
で、アセンブラが得意と言った割に、アセンブラの記事を書いてないことに気が付いた。調べて見るとQiitaでアセンブラの記事が少ないことに驚いて整理し始めました。

# お便り
Twitterでおたよりをいただいた。１週間ほど先頭に貼らせてください。
１週間たったら、巻末に移動し、中身のURLは適切な所に貼らせていただきます。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr"><a href="https://twitter.com/kaizen_nagoya?ref_src=twsrc%5Etfw">@kaizen_nagoya</a> Z80のアセンブラはここにもちょっと書きました。linkerも用意されていて、M80に近く、クロスプラットフォームで使えるのでzmacが一番のお気に入りです。<a href="https://t.co/70ifSe240Z">https://t.co/70ifSe240Z</a></p>&mdash; やもり (@yamori813) <a href="https://twitter.com/yamori813/status/1447314862879567875?ref_src=twsrc%5Etfw">October 10, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr"><a href="https://twitter.com/kaizen_nagoya?ref_src=twsrc%5Etfw">@kaizen_nagoya</a> x86-16系はここに書きましたが、Z80より選択し少ないんですよね。<a href="https://t.co/9gJWf2Y6NA">https://t.co/9gJWf2Y6NA</a></p>&mdash; やもり (@yamori813) <a href="https://twitter.com/yamori813/status/1447317292321165319?ref_src=twsrc%5Etfw">October 10, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

データサイエンティストの気づき!「勉強だけして仕事に役立てない人。大嫌い!!」『それ自分かも?』ってなった!!!
https://qiita.com/kaizen_nagoya/items/d85830d58d8dd7f71d07

物理記事　上位100
https://qiita.com/kaizen_nagoya/items/66e90fe31fbe3facc6ff

数学関連記事１００
https://qiita.com/kaizen_nagoya/items/d8dadb49a6397e854c6d

言語・文学記事　１００
https://qiita.com/kaizen_nagoya/items/42d58d5ef7fb53c407d6

医工連携関連記事一覧
https://qiita.com/kaizen_nagoya/items/6ab51c12ba51bc260a82

通信記事１００
https://qiita.com/kaizen_nagoya/items/1d67de5e1cd207b05ef7

自動車　記事　１００
https://qiita.com/kaizen_nagoya/items/f7f0b9ab36569ad409c5

Qiita(0)Qiita関連記事一覧（自分）
https://qiita.com/kaizen_nagoya/items/58db5fbf036b28e9dfa6

鉄道（０）鉄道のシステム考察はてっちゃんがてつだってくれる
https://qiita.com/kaizen_nagoya/items/26bda595f341a27901a0

日本語（０）一欄
https://qiita.com/kaizen_nagoya/items/7498dcfa3a9ba7fd1e68

英語(0) 一覧
https://qiita.com/kaizen_nagoya/items/680e3f5cbf9430486c7d

転職(0)一覧
https://qiita.com/kaizen_nagoya/items/f77520d378d33451d6fe

仮説（0）一覧（目標100現在40）
https://qiita.com/kaizen_nagoya/items/f000506fe1837b3590df

安全（0）安全工学シンポジウムに向けて: 21
https://qiita.com/kaizen_nagoya/items/c5d78f3def8195cb2409

Error一覧 error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

Ethernet 記事一覧　Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794

Wireshark 一覧 wireshark(0)、Ethernet(48) 
https://qiita.com/kaizen_nagoya/items/fbed841f61875c4731d0

線網（Wi-Fi）空中線(antenna)(0) 記事一覧(118/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001

OSEK OS設計の基礎　OSEK(100)
https://qiita.com/kaizen_nagoya/items/7528a22a14242d2d58a3

官公庁・学校・公的団体（NPOを含む）システムの課題、官（０）
https://qiita.com/kaizen_nagoya/items/04ee6eaf7ec13d3af4c3

Error一覧(C/C++, python, bash...) Error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

C++ Support(0)　
https://qiita.com/kaizen_nagoya/items/8720d26f762369a80514

Coding Rules(0) C Secure , MISRA and so on 
https://qiita.com/kaizen_nagoya/items/400725644a8a0e90fbb0

なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2

言語処理100本ノックをdockerで。python覚えるのに最適。:10+12
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4

プログラムちょい替え（0）一覧:4件
https://qiita.com/kaizen_nagoya/items/296d87ef4bfd516bc394

TOPPERSまとめ　#名古屋のIoTは名古屋のOSで
https://qiita.com/kaizen_nagoya/items/9026c049cb0309b9d451

自動制御、制御工学一覧（０）
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39

自動制御、制御工学一覧（０）
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

小川清最終講義、小川清最終講義（再）計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53

＜この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。＞
This article is an individual impression based on the individual's experience. It has nothing to do with the organization or business to which I currently belong.
### 文書履歴(document history)
ver. 0.10 初稿　20180630 午前
ver. 0.11 目的、成果、背景、参考資料、項目追記　20180630 午後
ver. 0.12 参考資料追記 記事56,CPU8　20180701 午前
ver. 0.13 記事66。十項目追記 20180701 午後
ver. 0.14 記事76。十項目追記 20180702
ver. 0.15 CASL項目追記、視点十項目、項目順番入替 記事90 20180703
ver. 0.16 項目101, いいね66, views, 2300, 64bit,逆アセブル項目追加。アセンブラ短歌追記,  目標の記事数が100(20180704到達済) から200に増強。20180704
ver. 0.17 項目130, いいね86, views, 3200, 項目追記。順番入替。 20180705
ver. 0.18 16進数、機械語追記　Qiita記事項目145, いいね111, views 4050 20180706
ver. 0.19 Haskell追記 アセンブラ記事項目 150, いいね 120, views 4550, Qiita items 1006, Contribution 1063, follower 1002, 合計3000以上達成。目標より６日後。20180707
ver. 0.20 6502追記。「Linuxでx86アセンブラ by @MoriokaReimen」を節に。x86強化。「by Python」「連結器(linker)」を節に。目標項目を1000に。20180708
ver. 0.21 略号のfull spell付記。CASL, COMETフルスペル調査中。視点分割13。視点と見出しとの整合性は未整備。20180709
ver. 0.22 「30日でできる！OS自作入門」を節に。成果を10以上のCPU(20180709達成済)から 20以上のCPUに増強,20180710
ver. 0.23 「PC-6001 @fuzzball 」「athrill @kanetugu2018」節追記。記事２００超え。記事数が200(20180711到達済）から1000に増強。20180711
ver. 0.24 「理由(reason)」「経路(route)」節, Code Complete追加。20180712
ver. 0.25 参照追記、前書き(preface), 追伸(post script)、要請(pressing)追加、量子コンピュータに言及 20180713
ver. 0.26  「LJの力計算をフルアセンブラで書いてみる @kaityo256」追加 20180714
ver. 0.27 「gdb」項目追加 20180715 
ver. 0.28 「gdb リモートデバッグ @tetsu_koba 」「TOPPERS活用アイデア・アプリケーション開発コンテスト」項目追加, ARM64項目追記。 20180716
ver. 0.29, 6809, PIC, CAP-X,「FPGA+SoC+Linuxのブートシーケンス@ikwzm」項目追加 20180717
ver. 0.30 8bit cPU, 16bit CPU, 32 bit CPU, 64bit CPUの順番に整理（一部混在）,成果を20以上のCPU(20180716達成済)から 30以上のCPUに増強, 20180718,
ver. 0.31 CPU設計会社名追記 20180719
ver. 0.32 機械語 @7shi, Z80 @Stosstruppe 項目名に 20180720
ver. 0.33 リバースエンジニアリングへの道 @deta-mamoru 項目追記 20180721
ver. 0.34 webassembly, LLVMIR, bitcode追記 20180722
ver. 0.35 ０）「単純に楽しいから学ぶのだ」、GPUの節追加。論理回路としてのGPUの記述が見当たっていない。別途記事を書く予定。20180724
ver. 0.36 タグとみだしに #名古屋のIoTは名古屋のOSで 追記 20180801
ver. 0.37 前書きにObject Oriented追記 20180815
ver. 0.38 表題改定。20180816
ver. 0.39 docker, mac見出し作成 20181022
ver. 0.40 はてなブックマーク追記 20190119
ver. 0.41 CPUの歴史と言語・OS・ネットワーク 追記 20190302
ver. 0.42 参考資料追記 20190502
ver. 0.43 アセンブラ追記 20190503
ver. 0.44 追記 20190513
ver. 0.45 表題変更、URL追記 20191127
ver. 0.46 前書きの前に(before preface) 追記 20200108
ver. 0.47 前書き追記　20201119
ver. 0.48 LISP追記 20201219
ver. 0.49 「ざっくりアセンブラ入門」よりLGTM数が超えたことを記念して、アセンブラ本当にざっくり理解するための補足を追記　20211010
ver. 0.50 researchmap「アセンブラ入門への入り口」リンク切れ解消 20211011 00:00
ver. 0.51 標題簡略化。いいね(LGTM)1000目標記載。20211011 20:00
ver. 0.52 @yamori813 さんからTwitterでおたよりをいただいた。１週間ほど先頭に貼らせてください。１週間たったら、巻末に移動し、中身のURLは適切な所に貼らせていただきます。20211011 21:00
ver. 0.53 URL追記　20211011 23:00
ver. 0.54 目次作成 20211012 22:00
ver. 0.55 アセンブラへの道(2) へ一部移転 20211012 23:00
ver. 0.56 登録数 340 20210114 午後9時
ver. 0.57 みだし統合 やや読みやすく　20211014 午後10時
ver. 0.58 目次統合 20211015
ver. 0.59 6502 追記 20211019
ver. 0.60 RISC-V追記　20211025
ver. 0.61 URL追記　20220918
### 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
####  Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.

<a href="http://b.hatena.ne.jp/entry/s/qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2" class="hatena-bookmark-button" data-hatena-bookmark-layout="vertical-normal" data-hatena-bookmark-lang="ja" title="このエントリーをはてなブックマークに追加"><img src="https://b.st-hatena.com/images/entry-button/button-only@2x.png" alt="このエントリーをはてなブックマークに追加" width="20" height="20" style="border: none;" /></a><script type="text/javascript" src="https://b.st-hatena.com/js/bookmark_button.js" charset="utf-8" async="async"></script>
http://b.hatena.ne.jp/guide/bbutton