トップページ⇒tech
30コメント9KB

アセンブラ 13

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2011/08/28(日) 15:24:40.59
前スレ
http://pc11.2ch.net/test/read.cgi/tech/1187079488/
0002デフォルトの名無しさん2011/08/28(日) 15:27:22.39
> アセンブラを勉強するのにいい、unix系の本がありますか?

「プログラミングの力を生み出す本」がわりと良かったのだが在庫切れ増刷未定のようだな。
0003デフォルトの名無しさん2011/08/28(日) 17:58:47.52
カーネルのソースだろ
0004uy2011/08/29(月) 06:06:41.24
>>3
こういう奴って
どのバージョンのカーネルのどのファイルのアセンブラソースさしてんだ

他の奴は答えなくていいから ちょっとお前答えてみろよ

で、そのソースファイルを読むとどういうアセンブラの知識がみに付くのか、言ってごらん


知ったかぶりでカーネルカーネルいってるなら 責任とって死ねよお前
0005デフォルトの名無しさん2011/08/29(月) 08:14:26.79
おまえも2ちゃんねる荒らしの責任とって死ねよ
0006デフォルトの名無しさん2011/09/03(土) 07:38:26.09
>>4
3じゃないがLinux 0.01のboot.s head.sなんかはよんでおいたほうがいいな。
16bit real modeでのBIOS interrupt callの使い方から、32bit保護モードへの以降
gdtr idtr等のディスクリプターテーブル、ページング機構の準備とか。
アセンブリの知識もあるけどx86アーキテクチャの知識も身につく
0007デフォルトの名無しさん2011/09/03(土) 08:41:50.59
うんこぶりぶりあせんぶり
0008デフォルトの名無しさん2011/09/13(火) 08:07:27.52
ザイログ形式以外身につかない
0009デフォルトの名無しさん2011/09/14(水) 14:13:17.97
Z80をIntelニーモニックで解説している本で勉強すればいいんじゃね?
(俺はZilogで覚えちゃったからMOVとかわからんちん)

それ以上の奴をいきなり最初にやるのは敷居が高い気がする
0010デフォルトの名無しさん2011/09/14(水) 16:15:16.64
マシン語レベルで同じなんだから
あとはコンパイラがザイログ形式を受け付けるか受け付けないかの違いでしかない

シンプルで使いやすいザイログ形式がこれだけ干されてるのが不思議だ
8080ニーモニック    Z80ニーモニック
MOV A,M       LD A,(HL)
MOV M,A       LD (HL),A 
LDAX B         LD A,(BC)
LDAX D         LD A,(DE)
STAX B         LD (BC),A
STAX D         LD (DE),A
LDA 1234       LD A,(1234)
STA 1234       LD (1234),A

LD一つで済むだろ
0011デフォルトの名無しさん2011/09/14(水) 17:46:04.25
俺はアセンブラ程度は自分で作ったけど、全部「A=B」のような代入形式にしたな。
0012デフォルトの名無しさん2011/09/14(水) 17:48:15.57
そういえば昔、SMCなんとかという8bitパソコンがそんな感じだったな
0013デフォルトの名無しさん2011/09/14(水) 18:19:48.54
Zilogのはアセンブラがめんどくなるのでメモリ厳しい環境にやさしくない
0014デフォルトの名無しさん2011/10/07(金) 17:08:46.15
0f 01 d8 vmrun
0f 01 d9 vmmcall
0f 01 da vmload
0f 01 db vmsave
0f 01 dc stgi
0f 01 dd clgi
0f 01 de skinit
0f 01 df invlpga

オペコード表には載ってないけどこんな命令あったのか
0015デフォルトの名無しさん2011/10/07(金) 19:22:05.03
AMDV?
0016デフォルトの名無しさん2011/10/07(金) 20:00:51.00
>>15
あーそれでしたどうもです
インテルのマニュアルには当たり前だけど何も載ってないから知らなかった
0017デフォルトの名無しさん2011/10/10(月) 12:39:42.35
longモードで
40 01 00 rex add %eax,(%rax)
01 00 add %eax,(%rax)
この二つは実質的にどういう違いがあるんでしょうか?
0018デフォルトの名無しさん2011/10/10(月) 13:32:41.88
x86で、アセンブラのソースとしては区別がつかない、ことなったバイナリ機械語列が
あることについての疑問?
特に差はないよ。昔からある。
0019デフォルトの名無しさん2011/10/10(月) 13:52:38.18
REXプリフィクスのWビットを作った目的は
新たに増えた8本のレジスタの下位32/16ビットをアクセスするためということでいいんでしょうか?
オペランドサイズを32bitにするだけならREXプリフィックスなしの命令を使えば済むはずですよね
66とREX.Wの二つのフラグがあって分かりにくいです
0020デフォルトの名無しさん2011/10/22(土) 07:51:13.15
C言語に挫折したので、アセンブラから修行しようと思います。
シンプルで学びやすく資料が多いものとなればZ80になりますでしょうか?
定番と呼べる解説書などあったら紹介してください。
0021デフォルトの名無しさん2011/10/22(土) 10:45:32.09
CASL2(情報処理試験用の架空アセンブラ)という手もある
素人向けの資料に関してはかなり多い、試験対策の参考書が大量に出回ってるからな
0022デフォルトの名無しさん2011/10/22(土) 12:06:05.99
CASLはやめとけ。

今時バイトアドレッシングじゃないアーキテクチャで入門の勉強しても、
後でわかりにくくなるだけだ。
0023デフォルトの名無しさん2011/10/22(土) 12:57:19.77
この人のやりたいのはC言語じゃね?
C言語の予備知識つける程度にならあれで充分な気もするが
0024デフォルトの名無しさん2011/10/24(月) 21:59:25.14
>>20
16bitマイコンが良いんじゃない?
秋月その他でキットが買えるルネサスのH8とか、TIのMSP430とか。
どちらも開発ツールは使いやすいとは言えないかもしれんが、
命令セット自体は割とシンプルで癖もなく使いやすい。
0025デフォルトの名無しさん2011/10/25(火) 00:18:32.65
windowsに付いてくるdebugで十分だよ
0026デフォルトの名無しさん2011/10/25(火) 11:44:17.71
いまさら8086の勉強しても…
確実にセグメントで挫折するぞ
0027デフォルトの名無しさん2011/10/25(火) 19:26:24.25
はじめて読む486のx86-64版みたいな本はないのかな。洋書でもいいんだけど。
0028デフォルトの名無しさん2011/10/26(水) 10:31:41.22
>>27
これは?
Professional Assembly Language (Programmer to Programmer) by Richard Blum
http://www.amazon.com/Professional-Assembly-Language-Programmer/dp/0764579010/ref=sr_1_1?ie=UTF8&qid=1319591733&sr=8-1

あと新しめなのが
The Art of Assembly Language by Randall Hyde
http://www.amazon.com/Art-Assembly-Language-Randall-Hyde/dp/1593272073/ref=sr_1_5?ie=UTF8&qid=1319591733&sr=8-5

この本ではHLA (High Level Assembler)というPascalっぽい独自のマクロアセンブラを使ってるね。
http://homepage.mac.com/randyhyde/webster.cs.ucr.edu/index.html
0029デフォルトの名無しさん2011/10/26(水) 22:12:46.54
>>28
勧めてくれてありがたいんだけど、違う種類の本みたい。
0030デフォルトの名無しさん2011/12/12(月) 06:43:54.37
x86で処理実行するコアを指定する命令を教えてください
■ このスレッドは過去ログ倉庫に格納されています