[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 02/24 11:23 / Filesize : 211 KB / Number-of Response : 985
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

アセンブラ… (゜□゜) ↑アッー!↓



1 名前:デフォルトの名無しさん [2006/05/24(水) 01:43:34 ]
アセンブラ全般に関するスレッドです。

【前スレ】
アセンブラ… ヽ(゚∀゚)ノフォーウ!
pc8.2ch.net/test/read.cgi/tech/1132761638/

過去ログは>>2辺り

30 名前:デフォルトの名無しさん mailto:sage [2006/05/28(日) 09:05:45 ]
>25
「American Standard Code」に半角カナが混じっていいわけねぇだろw

31 名前:デフォルトの名無しさん mailto:sage [2006/05/28(日) 09:27:57 ]
相変わらずここのスレタイはこの板でちょっと異彩

32 名前:デフォルトの名無しさん mailto:sage [2006/05/28(日) 12:23:12 ]

21のやつASCIIにしてみたけど自信ない。
BX=0以外で結果のCF逆転?

;ADD AX,BX
PUSH SI ; V
PUSH BX ; S
PUSH AX ; P
DB

33 名前:デフォルトの名無しさん mailto:sage [2006/05/28(日) 12:24:47 ]
切れたorz
;ADD AX,BX
PUSH SI ; V
PUSH BX ; S
PUSH AX ; P
PUSH 2121h ; h!!
POP AX ; X
XOR AX,2121h ; 5!!
PUSH BX ; S
POP SI ; ^
PUSH AX ; P
PUSH SP ; T
POP BX ; [
SUB word ptr[BX],SI ; )7
POP SI ; ^
PUSH SP ; T
POP BX ; [
SUB word ptr[BX],SI ; )7
POP AX ; X
POP BX ; [
POP SI ; ^

34 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 01:28:22 ]
>>30
だめか。

>>33
流石。

35 名前:デフォルトの名無しさん [2006/05/29(月) 08:09:49 ]
日本語で読める、PowerPCアセンブラの書籍ってないものでしょうか?
x86なら沢山あるようですが、PPCはなかなか見つからない。

36 名前:デフォルトの名無しさん [2006/05/29(月) 21:21:46 ]
バブルソート誰か書いてくれ・・・
簡単なのでいいから

37 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 21:39:52 ]
>>36
ttp://tfusvsun.tfu.ac.jp/mko/CASL2/vol3/text/3-10.html

38 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 21:49:25 ]
>>35
昔あったんだが、絶版になったらしい。

金があれば買いたかったんだが。




39 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 22:31:02 ]
>>35
書籍じゃないが
ttp://www.nk.rim.or.jp/~jun/ppcasm/ppcasm01.html


40 名前:デフォルトの名無しさん [2006/05/29(月) 22:53:08 ]
>>37
ありがとう(´;ω;`)ウッ…

41 名前:デフォルトの名無しさん [2006/05/30(火) 07:28:26 ]
>>38
この間ヤフオクに出品されてたよ

42 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 07:43:38 ]
>>35
近所のブコフで安売り

43 名前:36 [2006/05/30(火) 07:44:13 ]
また質問でホントゴメン
マイクロプロセッサ実験にバブルソートプログラム書かなくちゃいけないんだけど

・初期データはメモリ上に用意
 ・データ数のラベル名:NumberOfData
 ・データ配列のポインタのラベル名:DATA
 ・任意のデータ数に対応
・ソート後のデータ出力の際はinとoutを交互にしておく

>NumberOfData:
>      .word 10
>DATA:  .word 1000
>      .word 200
>      .word 6000
>       ・・・
>      .word 1000

>in
>ld     kekka1
>out
>in
>ld     kekka2
>out

全く意味がわからん・・・
>>37見てとりあえずそのサイトで勉強したけど
メモリ上に用意ってのが理解できないんだ(;´Д`)

44 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 09:00:10 ]
初めてここでまともな質問を見た気がする


45 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 09:03:54 ]
まともか?
どのプロセッサ使ってるか書かずに


46 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 09:15:21 ]
>>45
多分自作プロセッサ

47 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 11:10:34 ]
>>43
それだけじゃ誰にも意味わからないぞ。
省略してるだろ。

>メモリ上に用意
ここだけは喪前以外の誰でも意味がわかるw

48 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 11:12:50 ]
そういうことか



49 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 13:03:30 ]
自作です

50 名前:36 [2006/05/30(火) 15:23:07 ]
言葉足らずでスイマセン・・・
KITEプロセッサっていう実験用のプロセッサみたいです。


51 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 16:22:25 ]
>>50
じゃあ、まずプロセッサの仕様書の一ページ目の一行目から四行目を写してみよう。

52 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 16:32:43 ]
ttp://www.arch.cs.kumamoto-u.ac.jp/project/kite/3days/explain/KITE/KITE1_0_1.html

担当の先生降臨したらオモシロイが

53 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 18:31:40 ]
KITAAプロセッサのことなら分かるんだが
KITEはちょっと手に負えないな
スマン

54 名前:デフォルトの名無しさん mailto:sage [2006/05/31(水) 13:07:16 ]
A.
任意のデータ数に対応するにはメモリ空間が不足するため
仕様を満たすプログラムは作成不可能です

55 名前:デフォルトの名無しさん mailto:sage [2006/05/31(水) 13:15:46 ]
確かにポインタの桁数が決定できないな。
あと、長大なポインタでメモリをアクセスできることが保証されてなかったりして。

56 名前:デフォルトの名無しさん mailto:sage [2006/05/31(水) 22:27:26 ]
すみません、アセンブラの勉強をしようと本を探してるのですが
何かおすすめの本はないでしょうか
アセンブラに関しては全くの初心者です
C言語やJava等の経験はあります
今のところ独習アセンブラを買おうと考えてます…

57 名前:デフォルトの名無しさん mailto:sage [2006/05/31(水) 22:46:38 ]
アセンブラのことしか書いてない本は避けよう


58 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 00:11:59 ]
>56
何を目的に勉強するかによるんじゃね?
インラインでSIMD使うのか、組み込み系にシフトするのか、OS書くのか。



59 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 00:42:36 ]
>>56
現状の最善手(新書)では独習一択かもしれないが、取り敢ず立ち読みで判断すべし。
初心的な話なら素人ながらの意見、変なゲーム改造ネタだけの本よりかマシかと。

60 名前:デフォルトの名無しさん [2006/06/01(木) 01:31:47 ]
>>56

www5c.biglobe.ne.jp/~ecb/assembler/assembler00.html

61 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 04:10:27 ]

「いまどきの〜」と名の付くシリーズは

買ってはいけない


62 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 04:34:16 ]
いまどきの土器

確かに駄目そうだ

63 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 04:34:51 ]
「時代遅れのアセンブラ」
「これから来るアセンブラ」

64 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 04:57:12 ]
>>61
あんなの擁護するやついるのか

65 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 09:48:45 ]
PIC のマイコン工作関連の本でも漁ってみたら?
タダで処理系はばっちり入手できるし、結構工作関連の人ってアセンブラ
苦手なようで、複雑なプログラムはあんまり載ってないし。

66 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 13:23:16 ]
>>57 了解です
>>58 一応Windows上で動くのをやりたいです
>>59 田舎ですから置いてないんですよね…図書館にリクエストしてみます
>>60 そのページは全部読んだんですが、どうもリファレンス的で基本を分かってない自分にはさっぱりで…
>>61 悪書として聞いた事があります
>>65 PICも後々やってみたいと思っています

67 名前:60 [2006/06/01(木) 23:11:11 ]
>>66

じゃぁ、アセンブラの教科書の前に
矢沢久雄「プログラムはなぜ動くのか」(2001年10月)日経BP社\2400
ってのもある


68 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 00:33:33 ]
「CPUの創りかた」

この本マジおすすめ




69 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 00:34:16 ]
「CPUの創りかた」

この本マジおすすめ

ttp://www.amazon.co.jp/gp/product/4839909865/

リンク貼るの忘れてた


70 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 00:56:29 ]
なんか、表紙を見ただけで手に取るのが憚られるなw

71 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 01:20:22 ]
時々出てくる萌え子ちゃんは、
実は筆者の愛を表現するために、編集者が勝手に登場させたのでしょう。

本書の最後にある「おわりに」に筆者自身が萌え子ちゃんの登場に衝撃を
受けた様子が暴露されています。

72 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 01:27:08 ]
いや、文章も絵も同じ人間が書いてるんだが、それ。

73 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 17:44:38 ]
なんか住む世界が違うと言うかなんと言うか…
出来損ないのCPU作るよりまず頭のry

74 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 21:32:27 ]
頭の?

75 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 21:48:05 ]
りぼんが表紙が白で裏表紙が赤なのが気になるとか?

76 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 22:48:35 ]
あるサイトで見かけたんだけど、

ebxとecx*8を足して1000を引いてeaxに代入する最速コードは?

という問題で、

lea eax,[ebx+ecx*8-1000]

とlea命令一発でやっているんだけど、CPUはこういう計算は乗算・減算を
しないでさくっと 1clock で済ますことが出来るの?
なんでこんなことが出来るのかさっぱり仕組みが分かりません。

あと、MSVC++(うちで使ってるのは6.0)とかは実行速度で最適化をすれば
こういう処理の置き換えは自動でやってくれるんですか?

77 名前:デフォルトの名無しさん mailto:sage [2006/06/03(土) 00:10:23 ]
> 1clock で済ますことが出来るの?
プロセッサによって違うに決まってる。
少なくとも、i386では出来ない。

> なんでこんなことが出来るのか
そういうハードウェアを搭載してるから。

> 自動でやってくれるんですか?
コンパイラの出力くらい、自分で確かめろよ。

78 名前:デフォルトの名無しさん mailto:sage [2006/06/03(土) 10:38:03 ]
>76
減算はともかく乗算なんかしてないだろ。



79 名前:デフォルトの名無しさん mailto:sage [2006/06/03(土) 10:48:32 ]
lea eax,[ebp+ebx*8-1000]
ならi386でも可能?

80 名前:デフォルトの名無しさん mailto:sage [2006/06/03(土) 12:12:03 ]
>>79
「lea eax,[ebp+ebx*8-1000]なら386でも1clockで実行可能か?」
ということなら無理。

>>76
ターゲットCPUに対応した最新の最適化コンパイラを使えば
「条件さえ良ければ」かなりの所まで自動で最適化してくれる。

最近(でもないか)の例:
ttp://www.intel.co.jp/jp/developer/technology/itj/2004/volume08issue01/art02_compilers/p04_automatic.htm

81 名前:デフォルトの名無しさん mailto:sage [2006/06/03(土) 12:19:04 ]
leaはi386では2クロック。


82 名前:デフォルトの名無しさん [2006/06/04(日) 00:31:44 ]
DSP得意の積和演算だろ

83 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 01:05:16 ]
すみません質問です。
スレタイの 「アッー!」 が発音できないのですが・・・どう読むんですか?

84 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 01:13:52 ]
>82
lea は積ではなくビットシフト
>83
ガイドライン池

85 名前:デフォルトの名無しさん [2006/06/04(日) 03:47:54 ]
x86のRPLとはなんですか?説明見てもなんのことかよく分からないんですが・・・

86 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 05:27:32 ]
はじめて読む486あたりの説明で理解できないなら、そういうものだと思っとくしか。

87 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 06:21:35 ]
セグメントディスクリプタのDPLフィールドと
セグメントセレクタのRPLフィールドの
二つあるのが意味不明というか

88 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 09:15:37 ]
データa,bをキーボードから入力するとa×bの計算結果が表示素子に表示する
ソースはどうなりますか?



89 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 09:26:57 ]
>88
IOの情報も無いのに出力出来るかとか、
せめてCPUくらいは書けとか思ったが・・・

宿題くらいは自力でやれ、な?(AA略

90 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 11:23:14 ]
>>88
よし、出来たぞ。
不明な部分は俺が勝手に脳内補完してやったから安心しろ。

      ORG   100H
START: LD    C,1
      CALL  5
      SUB   30H
      PUSH  AF
      LD    C,1
      CALL  5
      SUB   30H
      POP   BC
      JR    Z,DISP
      LD    C,A
      XOR   A
LP01:   ADD   A,B
      DAA
      DEC   C
      JR    NZ,LP01
DISP:   LD    HL,STR+2
      LD    (HL),A
      LD    A,33H
      RRD
      INC   HL
      LD    (HL),A
SK01:   LD    C,9
      LD    DE,STR
      JP    5
STR:   DB   0DH,0AH,00H,00H,0DH,0AH,24H
      END  START

91 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 12:03:44 ]
>>88 どうもです。参考にさせていただきます。ちなみに8085プログラミングで
   やったらどうなりますかね?

92 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 13:20:59 ]
>>91
学生実験乙

93 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 15:27:22 ]
>>91
Z80→8080(8085)変換くらい自分でやれ

94 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 19:43:05 ]
>>93
先ずはZ80でアセンブルして8080で逆アセンブルしてみたら?
#取り敢えずJR ZはJP Zに置き換えるとして後はLD DEが問題かな?
##RRDってなんだっけ。

95 名前:93 mailto:sage [2006/06/04(日) 20:02:03 ]
いや、俺に言われても…

96 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 21:51:34 ]
>>94
RRDは4ビット単位のローテートだな
LD DEについてはCP/Mでなんでメッセージ出力にDEレジスタを使うと思ってるんだi8080でも問題なしだよ

97 名前:デフォルトの名無しさん mailto:sage [2006/06/04(日) 22:47:57 ]
8085で入力した数を表示素子に出力するとこうなるだろう?
.8085
ASEG
DISP EQU 0040H
DHEX2 EQU 0046H
KEYIN EQU 004FH
ORG 8000H
LOOP : CALL KEYIN
JNC LOOP
MVI C,1
CALL DHEX2
CALL DISP
END

98 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 00:06:13 ]
>>88 8085で作ってみたけど間違っているところない?
.8085
ASEG
DISP EQU 0040H
DHEX1 EQU 0043H
KEYIN EQU 004FH
ORG 8000H
IN1 : DB 0
IN2 : DB 0
ANS : DB 0
LP1 : CALL KEYIN
JNZ LP1
STA IN1
CALL DHEX1
CALL DISP
LP2 : CALL KEYIN
JNZ LP2
STA IN2
CALL DHEX1
CALL DISP
MVI C,IN1
MVI A,IN2
LXI H,0000H
LP3 : DCR A
DAD B
JNZ LP3
CPI 15H
CALL DHEX1
CALL DISP
END



99 名前:デフォルトの名無しさん [2006/06/05(月) 00:21:11 ]
>>36
>>50
去年は足し算引き算掛け算だけだったんだが
今年はバブルソートかよ。

100 名前:デフォルトの名無しさん [2006/06/05(月) 04:34:21 ]
アセンブラでゲーム作れますか?

101 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 05:40:51 ]
ゲーム機はほとんどアセンブラですが

102 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 10:59:47 ]
>>101
いつの時代ですか

103 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 11:31:54 ]
>>101
対応コンパイラが無くて困ってるPS3開発さんですか?

104 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 17:11:13 ]
マクロアセンブラに条件アセンブル、繰り返し、出力などがあれば
アセンブラでもライフゲームくらい作れるんじゃないの?
TeX でライフゲーム作ったと言う話は聞いたことがある。

105 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 17:17:54 ]
>104
んなもん無くたって作れる。

106 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 17:28:30 ]
あるCPU上で実行可能な全てのプログラムはアセンブラで記述することが可能。
現実的かどうかはともかくとして。

107 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 17:44:17 ]
みんな。アセンブラとアセンブリ言語をまちがえてないか?

108 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 17:50:39 ]
>>107
ttp://e-words.jp/w/E382A2E382BBE383B3E38396E383A9.html
こういう事が言いたいなら、お帰り下さい。
この程度の意味が通じないなら日本語を使って生きていくのは難しい。



109 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 18:12:55 ]
そういうばやいはアセンブリ言語を使って会話してください

110 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 18:22:33 ]
フルアセンブラでOS創ったよ

111 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 20:06:50 ]
mov trash,107
fire trash

112 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 20:11:28 ]
>>106
そのCPUに対応したアセンブリ言語があると仮定した場合にその命題は常に正しい。

だがCPUに対応したアセンブリ言語がそもそも存在しない場合、記述は不可能。


なかなか無い反例だが?

113 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 20:13:25 ]
>>112
>なかなか無い反例だが?

普通にあるような・・・ENIAC とか

114 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 20:30:12 ]
クロスアセンブラ作ればいいんじゃない。

115 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 20:58:38 ]
いや、そもそもENIACのプログラムは電気的な配線(コード)として表現されるから。
強いていうと、アセンブラの出力が配線図として出力されるとか?

116 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:02:40 ]
ここ数年の話だって、intel/AMDが新しいSIMD命令追加した直後、
アセンブラ未対応で直接バイナリ埋め込んだりとかあったなぁ。

117 名前:112 mailto:sage [2006/06/05(月) 21:07:12 ]
>>113
「現在は」なかなか無い反例 と言いなおそうか。

たしかにENIACについちゃ反例になるだろうが。そもそも機械語なんて概念が無いから。

118 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:07:24 ]
>>115
手作業でプログラムを入力しないといけないんだっけ?
そうなると、エニアックはCPU載せてるとは言えない説を提示したい。



119 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:08:22 ]
xor (107),(107)

120 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:09:17 ]
>>115
ENIACは10進数で計算する事を忘れてはいけない。そのアセンブラがあったとしてもそれだけで膨大な「配線組み合わせ」(プログラム)になってしまう。

121 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:11:38 ]
>>120
アセンブルは最新PCでやればいいじゃん。

122 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:18:45 ]
>>121
ttp://www.4gamer.net/news/image/2004.07/20040717153840_0big.html

いくら最新PCでもこれは”アッセンブル”できんだろ
まずはマニュピレータry

123 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:20:46 ]
まさに組み立て!

124 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:23:18 ]
アセンブル結果を自動的に配線してくれるメカを作ればいいんだ。
ただ、メカの製作はハードウエアであり、ソフトウエアではないが。

125 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:25:52 ]
DNA計算の場合も普通の意味でのアセンブリ言語はないような気がする。

126 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:28:53 ]
>>124
今だと PLD とか FPGA がそれにあたるのかな。

127 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 21:38:45 ]
エニアックって、数式記憶機能付き関数電卓みたいなもので、
プログラミングができる「PC」とは違うものなのかな。
あ、でも分岐命令はサポートしてる?

128 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 22:59:11 ]
>>127
電卓とは違う。どう考えても卓上には乗らない。(大きさと重さの面で)

そもそも、現在使われているCPUとは根っから構造が違う。



129 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 23:05:04 ]
誰も卓上に乗るかどうかなんて聞いてないよ!
構造がどう違うのか教えてくれ。

130 名前:デフォルトの名無しさん mailto:sage [2006/06/05(月) 23:05:27 ]
分岐は知らんがループというか繰り返し演算は出来る。
それしか出来ないというか・・・






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<211KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef