下を見るも何もレベルだけど
153 :
デフォルトの名無しさん:2014/02/24(月) 19:27:58.02
おすすめ書籍とかサイトなど御座いますか?
ないですね。
>>33 それをOSのスケジューラやVMが管理しているとしても
最終的にはCPUに何らかの命令が下って切り替わるわけだろ
157 :
デフォルトの名無しさん:2014/04/24(木) 20:23:29.80 ID:6eU9esML
日本語アセンブラは、誰も作らないね。
せいぜい単語レベルで置き換えるトランスレータかますくらいだろ
159 :
デフォルトの名無しさん:2014/04/27(日) 08:31:04.45 ID:zK6QyGSs
; こんな感じか?
スタート:
コピー dl,データ1
加算 dl,データ2
加算 dl,'0'
;日本語にすると、ド偉く開発効率が下がりそうなのはなぜ?
;母国語でわかりやすいはずなのに。
半角カタカナに統一するのが美しい
>>159 IMEが間に入るからじゃね?
確定させるまでに文字の誤爆もあったりとか。
アセンブラなら横にクソ長くなることはないから
IDEが領域分けて日本語名を表示してくれるだけでいい気がする
>アセンブラなら横にクソ長くなることはないから
1行にマルチステートメントで複数命令を記述できるアセンブラもあるし、
同時に動作する複数のバスの動作を1行に記述するのが前提のもあるし、色々だよ。
164 :
,,・´∀`・,,)っ-○○○:2014/04/27(日) 14:17:19.42 ID:KmoJaXUX
プリプロセッサマクロでレジスタにCみたいな変数名をつけたり
ループや条件分岐の構造をわかりやすくする為にインデント使う
こともあるから、長さに関してはそこまで変わらない。
AVX以降多いよね、Cで書かせる気ねーだろってくらい長い名前の
組み込み関数とか
まずカナ入力の練習からだな
ていうか、命令はひらがな中心で行くべき
特に使用頻度の高そうなものは
166 :
,,・´∀`・,,)っ-○○○:2014/04/29(火) 00:44:32.64 ID:npAIF076
自分でNASMなりYASMなりのプリプロセッサ書いてみりゃいいんじゃねーの
grepとか使えば余裕だろ
AVX-512のマスクやSAE指定で使う{}はRubyの構文ならブロック扱いになるから
普通に使えるよなと思って「Xbyak on Rails(仮)」を書き始めて3時間で放り投げ
よく考えたらこんなもんいらねー
ここでも団子ちゃん劇場はっじまっるよー
>>166 > 自分でNASMなりYASMなりのプリプロセッサ書いてみりゃいいんじゃねーの
> grepとか使えば余裕だろ
grep?
169 :
,,・´∀`・,,)っ-○○○:2014/04/29(火) 20:30:54.99 ID:npAIF076
スクリプト言語組み込みのgrep関数の意味ね
HaswellのTSX命令にバグありでマイクロコードで無効にされるってマジかよ
しかもBroadwellの初期ステッピングまで響くかもしれないなんて言われてる
Pentiumの頃にもあったね
>>157 名前(オペランド)だけでいい、オペレータまで日本語化する必要はない
MOV EAX,1234+5678 ←オペランド
↑ ↑ ↑
ニ オ オ
モ ペ ペ
ニ ラ レ
ッ ン |
ク ド タ
おいおい、"EAX" も "1234+5678" もオペランドだろう、オペレータはまずかったなオペコードというべきだったか‥
>>175 0: a1 00 1b 00 00 MOV EAX,1234+5678 ←オペランド
↑ ↑ ↑ ↑ ↑
オ オ ニ オ オ
フ ペ モ ペ ペ
セ コ ニ ラ レ
ッ | ッ ン |
ト ド ク ド タ
>174のオペレータって+を指してんじゃ
178 :
デフォルトの名無しさん:2014/10/25(土) 05:39:41.70 ID:OBw5xvhC
馬鹿には無理
>>177 その"+"はアセンブラがアセンブル時に演算するものであり、ターゲットのCPUが演算するわけではないのだから、オペレータとはいわないね‥
"1234+5678" 全体で一つのオペランドだ
恥ずかし///
>>180 だからそれはアセンブラ層で扱うオペレータだとなんどいったら‥
レジスタも実際はオペコードに含まれてるケースも多いので
EAX がオペランドになってるのは違和感がある
>>182 > 157 デフォルトの名無しさん:2014/04/24(木) 20:23:29.80 ID:6eU9esML
> 日本語アセンブラは、誰も作らないね。
> 173 デフォルトの名無しさん [sage]:2014/10/24(金) 23:21:06.42 ID:60xLGkt4
>
>>157 > 名前(オペランド)だけでいい、オペレータまで日本語化する必要はない
という話の流れだからアセンブラの話で合ってるよ。
>>183 > レジスタも実際はオペコードに含まれてるケースも多いので
ちょっと何言ってんのか分からんからネットで確認できる実例挙げてよ。
マシン語レベルで言っていると思われ
マシン語の話はスレ違ですね。
ああ、x86のオペランドがAX固定の命令みたいな奴のことを指してるのかな。
そのへんは命令のネーミングの問題という感じもあって、(仮に名づけるなら)
ADDAXとかMOVAXみたいな名前の別の命令にしちゃったりすることもあるので、
まぁあまり厳密に定義はできないから、議論する意味はあまりないね。
例えばMC6800のLDAAとかADDBみたいなののこと?
あれはニモニックの一部にレジスタ名が含まれてるだけでオペランドとは違うよ。
ちょっと何言ってんのか分からん
x86で、アセンブリ言語では「ADD AX, 1」の「ADD」はオペコード(インストラクション、命令)、
AXと1はオペランド(引数)というように明確に分離できる。
機械語では 0x05 0x0001 となるが、ここでADDを意味する部分とAXを意味する部分は
0x05に一緒に入ってしまっていて分離できない(正確には5のLSBでALとAXのどちらかを
選択しているけど)。
結論としては、オペランド(の1部)がハードコードされた命令という奴があるので、
オペコードとオペランドの区切りはかならずしも明確ではない、ということになる。
>>191 極少数の命令だけだけどオペコードのバイトにregフィールドがある命令があるな
通常はオペランドはr/mバイトにあってオペコードとオペランドは完全に分離できるけど
アセンブラとマシン語が混ざって元々意味の無い話がやっぱり意味の無い話で回ってるね
更に遡ってくと元は日本語アセンブラか。。。本当バカ臭い
基本情報技術者試験でアセンブラ勉強しはじめた。
午後の選択問題で、アセンブラが簡単だと聞いたが…。
いまのところわけわからん。
二つやらないといけないそうだからな‥C と Java か‥
アセンブラはセンター試験の数IIb並みに簡単
文法がってだけでアルゴリズムは別だけどな
センター試験とか簡単なことを難しそうに見せて
というか問題(の意図)を判り難くして回り道させて
出題者側が時間稼ぎしてる感じしかしない
センターの問題はスレチである