- 1 名前:デフォルトの名無しさん [2006/05/24(水) 01:43:34 ]
- アセンブラ全般に関するスレッドです。
【前スレ】 アセンブラ… ヽ(゚∀゚)ノフォーウ! pc8.2ch.net/test/read.cgi/tech/1132761638/ 過去ログは>>2辺り
- 488 名前:デフォルトの名無しさん [2006/09/22(金) 21:11:12 ]
- MMX の質問です
pand mm0, mm1 を実行し結果がゼロになっても、ゼロフラグが立たないようです。 ゼロかどうかをチェックするにはどうしたらいいんでしょうか?
- 489 名前:463 ◆RMO61H2xHE mailto:sage [2006/09/22(金) 21:13:04 ]
- スペースが無視されたみたいなので、もう一回送ります。
section .data ; データセクションの定義 message db ' Hello, World ', 0Ah length equ $ -message ; 文字の長さ section .text global _start _start: mov edx, length ; 文字列の長 mov ecx, [message] ; 以下の3行でmsgとmsg+1の内容を入れ換える xchg ecx, [message+1] ; mov [message], ecx ; mov ecx, message ; 出力する文字の指定 mov ebx, 1 ; ファイルハンドル(1=標準出力) mov eax, 4 ; 出力(sys_wrigte) int 0x80 ; システムコール,出力する mov eax, 1 ; sys_exit mov ebx, 0 ; 終了ステータスコード int 0x80 ; システムコール,終了する eHllo, World としたいのですけど Helelo, World と表示されます!
- 490 名前:487 mailto:sage [2006/09/22(金) 22:01:16 ]
- コンパイルされたものをobjdumpでのぞいたら、
lss 0x18(%esp),%esp こういう風に変換されてました。 よく調べもせずに質問してすみませんでした。
- 491 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 22:12:08 ]
- >>489
mov cl, [message+2] xchg cl, [message+3] mov [message+2], cl
- 492 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 22:56:07 ]
- なんか
春だな・・・
- 493 名前:463 ◆RMO61H2xHE mailto:sage [2006/09/22(金) 22:56:18 ]
- >>491
ありがとうございます。 eHllo, Worldとなりました。アセンブリって意外とレジスタの動きが分かりやすいん ですね。 本や、ネットで検索しながらやってるんですけど、Linuxのnasmで 初心者に分かりやすい解説は、殆んどないんで困ってました。
- 494 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 23:18:49 ]
- どっかにnasm本家のマニュアルの日本語訳があったはずだが。
あれで十分よ
- 495 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 23:19:53 ]
- ってかmasmはMS公認で無料になったか。
イイジダイダナー
- 496 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/09/23(土) 05:38:45 ]
- >>488
MMX演算はフラグレジスタを更新しない。 いちど汎用レジスタに転送してから比較する必要がある。 0かどうかだけを判定するだけなら、たとえば packssdw mm0, mm0 movd eax mm0 test eax, eax
- 497 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 18:56:59 ]
- Z80ですけど
DAAってハーフキャリーは0になるの?それとも変化するの?どっち?
- 498 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 20:05:47 ]
- 変化する
- 499 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 21:57:47 ]
- Hello, Worldを10回表示して改行したいんですけど、
下記のソースを弄ってみましたが、よく分からないので教えて頂けないでしょうか。 section .data msg db 'Hello, World', 0ah len equ $ -msg section .text global _start _start: mov eax, 4 ; 出力 mov ebx, 1 ;(1=標準出力) mov ecx, msg ; mov edx, len ; 文字列出力 int 0x80 ; 出力 doit: dec ecx ; ecxをデクリメントする jecxz endquit ; ecxがゼロならジャンプ jmp doit ; doitへジャンプ endquit: mov eax, 1 ;(sys_exit) mov ebx, 0 ; 終了ステータスコード int 0x80 ; 終了
- 500 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 22:49:24 ]
- >>499
それじゃ一回だけ表示された後、しらばく後かすぐに終了するだろ。 int 0x80 ; 出力 doit: dec ecx ; ecxをデクリメントする jecxz endquit ; ecxがゼロならジャンプ jmp doit ; doitへジャンプ このdoit以下何もやっていないと同じだぜ? なぜecxをデクリメントして0になったら終了になるん?何目的だ? たぶんint0x80は文字列表示機能だと仮定するなら、 ediにでも0xaを入れておいて、 dec edi jnz _start ← ゼロじゃなけりゃジャンプっての にすればええ。
- 501 名前:499 mailto:sage [2006/09/26(火) 23:28:28 ]
- >>500
> それじゃ一回だけ表示された後、しらばく後かすぐに終了するだろ。 その通りなんです。弄っているうちに わけわからなくなってしまい、 1回だけ表示するプログラムに戻したものを書き込みました。 >499 の投稿は下記のDOSのプログラムをLinux上で jecxz を使って同じような動作を 再現できないか試行錯誤の最中だったんです。 ; DOS プログラム bits 16 org 0x100 mov ah, 9 ; 文字列出力指定 mov dx, msg ;出力する文字列 mov cx, 10 ; cxレジスタの値を10にする doit: int 21h dec cx ; cxを1だけ減らす jcxz endquit ; cxがゼロならendquitへ jmp doit ; doitへジャンプ endquit: mov ah, 4ch mov al,0 int 21h msg db "Hello, World", 0dh, 0ah,"$"
- 502 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 23:44:57 ]
- システムコール呼ぶときecxレジスタ使ってるだろ?
そんくらい気ずかん?(´・ω・`)
- 503 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 01:45:08 ]
- >>501
答えは分かるがあえて書かない。自分で考える事が上達には大事だしな。 先ほど書いたようにdiあるいはsiをcxの代わりにカウンタとし、 dec di jnz また文字列出力する場所 ってな感じにするのが良い。 あとint21hの後のレジスタの値は保障できないと考えた方が一応はいいと思うから、 doitの位置を変えた方が確実だと思う。
- 504 名前:デフォルトの名無しさん [2006/09/27(水) 09:36:16 ]
- x86CPUで、32ビットの値を3倍するとき、
x = x * 3; と、 x = (x<<1) + x; はどちらが高速なんですか?
- 505 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 10:02:43 ]
- >>504
スループットは上の方がいいが、 レイテンシは下の方がいい。 CPUによるけど。 どちらが速いかは周りの処理にもよる。 でも、x86ならこれが一番速いよ。 lea x,[x*2+x]
- 506 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 15:00:54 ]
- ていうか、いまどきのコンパイラは
3倍するのはleaに最適化してくれますよ。
- 507 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/09/27(水) 22:23:36 ]
- Pen4だとこれでも速かったりwww
mov edx, eax add eax, eax add eax, edx
- 508 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 00:52:21 ]
- >>507
シフトが add の 8 倍遅い変態 CPU を持ち出すのは反則だと思いまつ。
- 509 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 01:18:15 ]
- ペン4のALUは糞すぎるなw
- 510 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/09/28(木) 01:23:14 ]
- 依存関係を高いクロックによって解決するという手法は全てが間違いだった訳じゃないけど
クロックを重視したデータキャッシュが小さすぎたりパイプラインが長すぎたり 熱すぎたりで、全体としてマイナス要素が大きかったのが敗因ですな。
- 511 名前:デフォルトの名無しさん [2006/09/30(土) 18:11:57 ]
- スタックを使って A B と表示させようと思うのですけど、ウマクいきません!?
ご教示 お願いできないでしょうか。 section .text global _start _start: movdl, 0x41 ; "A" push dx call putchar pop dx mov dl, 0x42 ; "B" push dx call putchar pop dx mov eax, 1 ; sys_exit mov ebx, 0 ; 終了ステータスコード int 0x80 ; システムコール,終了する putchar: ; スタックの文字を出力する サブルーチン push esp mov ebp, esp sub esp, 0x40 ; ローカルスタックスベース mov ebx, [ebp+4] ; 最初のパラメータ mov dl, bl mov eax, 4 ; sys_write mov ebx, 1 ; ファイルハンドル(1=標準出力) mov ecx, esp ; 書き込むバッファ mov edx, 2 ; 文字出力することを指定 int 0x80 ; システムコール,出力する mov esp, ebp ; sub esp,0x40を取り消す pop esp ret
- 512 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 18:27:46 ]
- 32bitモードでdxレジスタなんか使うなよ・・・
あと最初のパラメタは[ebp+4]じゃなくて[ebp+8]だボケ
- 513 名前:ボケ [2006/09/30(土) 19:15:48 ]
- >>512
早速のご教示ありがとうございます。 ご指摘のdxをedxとし[ebp+4]を[ebp+8]に直してやってみたのですけど、 結果は変わらず、何も表示されなくて ただ改行されただけでした。 Cの参考ソースはけっこうありますけど、アセンブルってほとんどないですね!
- 514 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 20:05:55 ]
- >>513
最後に0x0aも出力してみれ。
- 515 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 21:58:20 ]
- >mov ecx, esp ; 書き込むバッファ
ここ間違っているのでは 既に40引いてしまっているのに・・・
- 516 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 22:04:24 ]
- lea ecx,[ebp+8]とかじゃね?
- 517 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 22:17:03 ]
- これはひでえ。釣り…なのか…?まあいいや。
putcharの先頭部分は push ebp ; espじゃねーぞ mov ebp, esp の間違い。それに伴ってretの前も pop ebp に修正。 sub esp, 0x40 では 0x40 も引く必要ない。0x4で十分。 「最初のパラメータ」コメントの次の mov dl, bl は何やってんのか意味不明。 ここは mov [ebp-4], ebx に変更。 putcharというからには出力文字数は1文字だろ。mov edx, 1 に修正。
- 518 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 22:34:25 ]
- > Cの参考ソースはけっこうありますけど、アセンブルってほとんどないですね!
だったらC言語で書いてみるべし。 /* putchar2.c */ #include <unistd.h> void putchar2(int ch) { write(1,&ch,1); } int main(void) { putchar2('A'); putchar2('B'); } そしてこいつを -S スイッチつけてコンパイルしる。 $ gcc -S putchar2.c コンパイラがどんなコードを吐くか、自分のものと見比べるべし。 最適化オプションも併せて指定するといいかもな。
- 519 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 22:37:26 ]
- gccの最適化は最初は知らないほうがいいんじゃないかw
- 520 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 22:40:35 ]
- どうして?ちょっとだけでいいから教えて・・
- 521 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 22:48:43 ]
- そしてICCとか最近のVC++で最適化コンパイルしてしまって余計混乱すると。
- 522 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 22:53:44 ]
- こんなガリガリのコードじゃたいして最適化できねぇw
putchar2はwriteをコールするだけだから関数の存在が消えてしまう可能性はあるが。 >>520 高度な最適化コンパイラは凡人の考えの及ばぬような超変形型ロジックを組むことがあるから。
- 523 名前:ボケ mailto:sage [2006/09/30(土) 22:59:17 ]
- >>517
釣できるほどのウデがあればいいんですけど… 貴方の仰る通り、>511の投稿には誤りがたくさんありました。 言われた通りにやったら AB と表示されました! 改行はしないみたいですけど、 改行は組めますので、後は簡単です。 Thanks
- 524 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 23:37:48 ]
- >>522
ふ〜ん
- 525 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 01:50:05 ]
- >>522
コンパイラ程度の最適化が超変形? じゃあ人が書いたコードは読めねぇなw
- 526 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 02:10:08 ]
- いや、人間様がそれ以上にド汚い変形かますことができるのも確かだが、
きょうびのコンパイラが超変形かますのは事実だろ。 何を噛み付いてるんだ。 カルシウム足りないのか。
- 527 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/10/01(日) 02:25:38 ]
- i *= 32;
を add eax, eax; add eax, eax; add eax, eax; add eax, eax; add eax, eax; に展開するコンパイラとかな。
- 528 名前:デフォルトの名無しさん [2006/10/01(日) 02:30:21 ]
- そんな大した事無いレベルの最適化でグダグダ言うなよ
- 529 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 02:39:09 ]
- VC++やICCの定数除算の最適化はなかなかエグかった気がするが
- 530 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 03:04:16 ]
- 漏れはVC2005のたらい回し関数でたまげた。
- 531 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 03:36:33 ]
- >>527
GCCでは無数にある最適化オプション組み合わせていくら頑張ってもシフトだった。 -O0ですらシフトだったw VC++のリリースコンパイルでもシフトだから、それが最善じゃないのか?
- 532 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 05:26:38 ]
- mov eax,dword 051eb851fh
imul ecx sar edx,byte 005h mov eax,edx shr eax,byte 01fh add edx,eax; / 100 これとか実行してみるまで何やってるかわからなかった(VC6)。
- 533 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 05:38:03 ]
- >>527
いや、それ普通。 VCのそれは、シフトが異常に遅い某CPUに配慮したものと思われ。 多分だけど。
- 534 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 09:07:13 ]
- P○n4は*32でもシフトより加算の方が早いのか?w
- 535 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 09:27:21 ]
- >>534
ちょっと上くらい読めや>507-509
- 536 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/10/01(日) 14:54:18 ]
- Pen4ではshlのレイテンシは4クロック、addは0.5クロック
依存関係チェインが深い場合は加算を繰り返した方ほうが早い VCじゃなくて、ICCの-QxWとか-QxNとかのPen4専用オプションだったような >>532 除算はクロック数やたらかかるから定数積算とシフトに置き換えるのは常套手段
- 537 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 17:29:21 ]
- 常套手段て…そういう裏技があるのなら標準でALUにそのロジックを積んで
もらった方がどれだけわかりやすいことか。 あるいは除算命令でこのシーケンスと同じμop生成するとか。 書きたいことはまだあるけどこれ以上はちょっとスレ違いになるので遠慮しよう。
- 538 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 17:53:12 ]
- いや、除算を他の演算に置き換えるロジックってすげー大変なんだが。
何で割るかによって全く違うロジックになるから。 そんなもんにトランジスタ突っ込む余裕なんかない
- 539 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 18:33:31 ]
- >>532は>>529と繋がっていたのか、気づかなかった。
定数除算限定で、しかも最適化のタイミングはコンパイル時じゃないといけない 程度に複雑なアルゴリズムなのか。 随分と頓珍漢なことカキコんじまったな(恥
- 540 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 23:19:27 ]
- テキストエディッタで.asmファイルを作成してコマンドプロンプトでアセンブルしようと思ったのですがうまくいきません。
ml〜コマンドは合ってるはずなのですが。 知恵をください。 XPSP2です
- 541 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 23:23:42 ]
- >>540
それだけの情報で何かわかると思ってんのか。 せめてエラーメッセージくらい貼れよ。
- 542 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 23:31:03 ]
- 'ml' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。 ってなります。
- 543 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 23:32:22 ]
- >>542
アホか。パス通してないだけでないか。
- 544 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 23:46:16 ]
- 先生できませnorz
- 545 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 05:03:25 ]
- アセンブラはちゃんとインストールされてるのか?
質問から察するに、それすら出来ていなさそうな気がする。 WinXPのDOS窓からの操作なら、DOS窓開いたらまずこのコマンドを打ち込む。 > set Path=%Path%;(ml.exeのあるディレクトリのパス) 開くたびにこれを入力するのが面倒くさいならバッチファイルに書くなり GUIから環境変数に登録するなり何なりと。
- 546 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 20:38:09 ]
- 先生無事できますた。ありがとん
- 547 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 10:06:06 ]
- 割り算が理解できん。
なんであんなことになってんの?
- 548 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 11:35:36 ]
- その割り算は>>532のことか?
1ワードが無限のビット長だとすると、原理的には x / 100 == (x / 100) << 32 >> 32 という当たり前の恒等式を巧みに利用する。 ここでは 2のx乗 を 2^x と表現するので、そのつもりで。 x回の左シフトは、算術的には *(2^x) を意味する。 その性質を利用すると、右辺は => x / 100 * (2^32) >> 32 => x * ((2^32) / 100) >> 32 と変形できる。最適化のとき予め (2^32) / 100 を計算しておく。 この定数をnとおくと、除算の商は (x * n) >> 32 で求めることができる。 つまり定数の除算は乗算とシフトに変換できるというわけ。 実際はビット長が無限大ということはないし符号も考慮しないといけないので これよりも少し複雑な処理になる。
- 549 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 12:14:56 ]
- 精度が落ちていいなら
inc ecx mov eax, dword 028f5c28h imul ecx でedxに解が得られないかな。
- 550 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 12:35:00 ]
- 無符号整数除算ならね。
- 551 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 20:35:59 ]
- ん?無符号型ならimulじゃなくてmulじゃね?
- 552 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 12:57:52 ]
- このスレが適当かどうかわからないんですが。
VC++の最適化OFFで生成した以下の絶対値を求めるコード cdq xor eax,edx sub eax,edx これに対応するC/C++のコードがわかるかたいませんか?
- 553 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 13:25:58 ]
- >>552
インラインアセンブラでも使ってない限りも最適化 Off ではそのコードは 出てこないと思うんだが・・・。 abs() を呼んでれば最適化 On の時そのコードになるよ。
- 554 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 13:59:52 ]
- >>553
/Oiオプションでabsが上記の命令に展開されたのを確認しました。 最適化はOFFだと思ってたのですが、一部だけ有効になってるのかもしれません。 (バイナリとPDBファイルしかないので詳細不明) ありがとうございました。
- 555 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 17:48:43 ]
- >>554
/Oiって思いっきり最適化オプションの一部だろ。
- 556 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 18:26:42 ]
- >>552-555
ワロタw
- 557 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 09:14:28 ]
- OiOi
- 558 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 13:59:22 ]
- RS-232C?
- 559 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 15:34:13 ]
- どっちかっつーと丸井
- 560 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 16:21:15 ]
- 丸井って、クレジット詐欺って意味でしょ?
- 561 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 22:19:52 ]
- >>560
訴訟の元ハケーン
- 562 名前:デフォルトの名無しさん [2006/10/12(木) 22:34:02 ]
- 訴訟あげ!?
- 563 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 13:55:12 ]
- 16ビットしか知らんが、みんな何に使ってるの?
やっぱインラインかな
- 564 名前:デフォルトの名無しさん [2006/10/13(金) 15:49:03 ]
- C言語からアセンブラ語に変換するにはどうすればいいですか??
分かりやすくお願いします.
- 565 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 15:54:22 ]
- コンパイラにアセンブラ語で出力するようにオプションを付ける。
- 566 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 15:54:28 ]
- GCCなら-Sとか
- 567 名前:デフォルトの名無しさん [2006/10/13(金) 15:58:20 ]
- それはMPLAB IDE上でできますか??
- 568 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 16:07:08 ]
- アセンブラ語て…新語捏造するなやorz
本当はアセンブリ言語ってんだ。俗的にアセンブラでも通用するが。
- 569 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 16:10:51 ]
- お前タン、実はマルチでつか?そんなことしたら駄目だお(AAry
- 570 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 17:20:51 ]
- >>568
JISでは「アセンブラ言語」
- 571 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 18:50:01 ]
- まじで?!
- 572 名前:デフォルトの名無しさん [2006/10/14(土) 16:55:38 ]
- 今学校の授業中です…
キーボードから3個の整数a、b、cを入力してスタックにセットし、これらの整数のうち最大整数をディスプレイに出力せよ。ただし、最大整数をセットするための変数maxもスタック上に作ること。 これが出来ないと帰らせともらえませんが、全くわかりません。どなたか出来る方いましたらよろしくお願いします。
- 573 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 17:21:41 ]
- よし!19時ぐらいまで粘れ!!
その時間位になれば、わかる人がここに来るぞ、たぶん。
- 574 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 17:40:28 ]
- >>572
開発環境、動作環境を書け。 話はそれからだ。
- 575 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 18:05:18 ]
- >>572
どのアセンブラで、どのCPUですか
- 576 名前:デフォルトの名無しさん [2006/10/14(土) 19:18:17 ]
- 19時を過ぎたのですがそろそろ教えてくれません?どうかお願いします。
- 577 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 19:23:08 ]
- >>576
いやだから教えようにも ・・まぁなんだ、頑張れ
- 578 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 19:35:56 ]
- >>576
>>574-575
- 579 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 19:54:20 ]
- >>576
変数って何桁でもいいの?
- 580 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 22:00:50 ]
- しかし、キーのスキャンやら画面表示やらはHWがわからんことにはどうしようもないだろ。
まあわかったところでこんなところに書き込めるようなコード量に収まるとも思えんがw
- 581 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 22:22:37 ]
- >>580
無能自慢はいいから
- 582 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 23:23:22 ]
- >>580
つ【ファンクションリクエスト】
- 583 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 23:44:27 ]
- 週末なのに学校に泊まりかw
- 584 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 00:01:57 ]
- >>582
それがある環境だと誰が言った?
- 585 名前:デフォルトの名無しさん [2006/10/15(日) 00:17:32 ]
- なんで教えてもらおうとしてるやつがそんなに偉そうなんだ
- 586 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 00:27:14 ]
- kawaisosu
- 587 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 00:43:22 ]
- 579はまだ帰れない
- 588 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 00:55:36 ]
- >>572
void main(){ }
- 589 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 00:57:03 ]
- >>572
void main(){ int a, b, c, max; scanf("%d", &a); scanf("%d", &b); scanf("%d", &c); if(a < b){ } }
- 590 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 00:58:06 ]
- うわーん、要はC言語で作って、
gcc -S で、アセンブリ出力したら、 勝手にやってくれるよ。 だって、ローカル変数はスタックなんだからさ。
- 591 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 01:43:47 ]
- >>590
ローカル変数が必ずスタックに確保されるという保証はない
- 592 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/10/15(日) 01:49:36 ]
- volatileでおk
- 593 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 03:34:15 ]
- スレ違いの話だが、
「C言語のローカル変数がスタック上に生成される」というのは そういう実装になっている処理系が多い、というだけで C言語の規格上、ローカル変数(自動記憶域期間をもつオブジェクト)は 「スタック上に確保されなければならない」とは一言も書いてない。
- 594 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 11:57:25 ]
- ほれ、糞団子、gccのソースに言及しつつ>>593について熱く語れよ。
- 595 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 12:07:56 ]
- 「&をつけないとレジスタに置かれる可能性があるが、&をつければ必ずメモリ上に置かれる」というのもただの伝説だね。
- 596 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 12:34:44 ]
- そんなことより>>572は帰宅できたのかどうか
- 597 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 14:43:46 ]
- 家がなi(ry
- 598 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/10/15(日) 15:18:30 ]
- >>594
そんなしょぼいポンコツコンパイラなんざ使わないからしらねー。
- 599 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 15:20:44 ]
- >>598
gcc-4.1.1で最適化を-O3なんかにしたら最適化が変態すぎてまともにうごかないんだぜ。
- 600 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 17:52:03 ]
- >>598
お前半年くらい前にあーだこーだいってた気がしたが。 ありゃ可変引数リストに関してだったっけ?
- 601 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 18:04:44 ]
- >>598
しょぼいポンコツとは失礼な。 某大学の実習で使用されるシステムはH/Wスタックを装備していないから メモリ空間ぜ〜んぶヒープな環境だ。レジスタはアキュムレータ1つだけ。 で、課題でこのシステム向けに最適化されたANSI Cのサブセットコンパイラを つくれというのがあったが、どんなに凝ったコンパイラを作れど、この場合 スタックを「使わない」のではなく「使えない」んだよ。 団子はそんな環境で四苦八苦したことがないだろうが。
- 602 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 18:07:25 ]
- おっつ失礼。「汎用」レジスタはアキュムレータ1つだけ。
レジスタは他にもあったよ。PCとか間接メモリアドレッシングで使うやつとか。
- 603 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 18:18:49 ]
- >>601
無能自慢はいいから
- 604 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/10/15(日) 18:22:58 ]
- >>600
んーでもそういう環境わざわざ選ぶ理由無いよね♪ どんなマイナーCPUですか? ちなみにJava仮想マシンなら汎用レジスタ1本のスタックマシンだよね。 それ以前の問題として、マシン語がどんなのかよくわからんわけで。 それこそ情報処理技術者でよく使われるCOMET2/CASL2かもわからんし。 Cでコンパイルしてアセンブリコード吐かせれば出せるって前提自体が おかしいと思うわけで。 演習で使う端末ってx86とかPowerPC(ようはMac)のほうが多いと思うんだけど
- 605 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 19:39:54 ]
- >>603
ゴメ。自慢するつもりはなかった。ただこういう環境もあるということを言いたかっただけ。 >>604 あるよ。この流れの上流をよく見てみ。>>572で今学校の授業中ですとある。 どんな反則/時代遅れシステムを使わされるかもわからない。高機能から超低次元まで 様々な環境を考慮しなければ質問に答えることは出来ない。 そうでなくてもこの分野はどんな質問がくるか予測しづらい面もある。 肝心の質問者は何も言わず逃げやがったなw
- 606 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/10/15(日) 19:43:12 ]
- まあ、かくいう俺も128本のレジスタと256KBのメモリ空間しかない
某プロセッサコアのシミュレータと格闘してた。 アレは気が狂いそうだ。
- 607 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 20:04:21 ]
- 128本も、一体何に使うんだよorz
人智では管理できんな、この数じゃ。CellとかItaniumとか!
- 608 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 23:36:33 ]
- Sparcも結構変態チックなレジスタ管理していた気がするが。
- 609 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 23:38:24 ]
- やはりデータレジスタ8本アドレスレジスタ8本が最も美しい。
- 610 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 23:46:19 ]
- >>609
レジスタの長さは、それぞれ 1Mバイトぐらいでよろしーですか?w
- 611 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 23:48:43 ]
- 奇数アドレスにアクセスすると転けるCPUなんて嫌いです。
- 612 名前:デフォルトの名無しさん [2006/10/16(月) 00:21:15 ]
- >>611
68000のことですか?
- 613 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 00:27:10 ]
- 中途半端に遅くなって動かれるくらいなら落ちてくれた方がいいけど。
- 614 名前:デフォルトの名無しさん [2006/10/16(月) 01:29:07 ]
- すみませんがわからないので教えてください・・・
お願いします 次の命令群を実行した結果を説明せよ CLR R0 ADD #1 R0 ADD #2 R0 ADD #3 R0 ADD #4 R0 次の命令群を実行した結果を説明せよ MOV #100,R1 CLR -(R1) CLR -(R1) CLR -(R1) CLR -(R1) 次の命令群を実行した結果を説明せよ CLR @#100 解答は○○○○番地を××に、R0を△△△△にする という形でできるだけ詳しくお願いします 本当にお願いします ・・・
- 615 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 01:42:53 ]
- 実行すればわかる
- 616 名前:デフォルトの名無しさん [2006/10/16(月) 02:30:42 ]
- お願いします。。。課題なのですが明日までなんです・・・
- 617 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 02:43:23 ]
- 明後日になったら答えてやる
と念を押しておいても誰かが先に答えちまうんだろうな 偽善もほどほどにしとけよ?
- 618 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 02:45:27 ]
- 宿題スレじゃ無いしな。
- 619 名前:デフォルトの名無しさん [2006/10/16(月) 02:48:32 ]
- すみません・・宿題スレがないので・・・
本当にお願いします・・教えてください
- 620 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 02:52:45 ]
- そもそもどのCPUを使っているのかなどの最低限の情報が与えられていないのではなぁ。
- 621 名前:デフォルトの名無しさん [2006/10/16(月) 03:36:39 ]
- すみませんわかりません・・
それしか書いてないので・・・ PDP11ってやつですかね・・? オペランドとか・・ 自分も授業で少ししただけで全然わからないんです・・・ 教えてもらえないでしょうか。。。
- 622 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 03:51:59 ]
- >>621
PDP11のアセンブラのマニュアルならここにあるからしっかり勉強しろ。 ttp://www.bitsavers.org/pdf/dec/www.computer.museum.uq.edu.au_mirror/D-09-30_PDP11-40_Processor_Handbook.pdf
- 623 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 04:00:17 ]
- おぉ、こんなものをこんなところで入手できるとは
いいものを手に入れた。マジサンクス>>622
- 624 名前:デフォルトの名無しさん [2006/10/16(月) 04:32:48 ]
- >>622
わかりました 勉強はします そのマニュアルは全部英語でよくわかりませんが・・ でも締切りが今日なんです・・・ とりあえず答えを教えてもらえないでしょうか・・・ もう時間が・・・ お願いします
- 625 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 04:38:51 ]
- >>624
そうやって2chに張り付いてうだうだ書いている暇に、英和辞典片手にマニュアル読めよ。
- 626 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 04:42:53 ]
- 課題のほうも煮詰まっているようだから>>614のサンプルに関連するページだけ抽出して
>>622から抜粋してみた。この辺を重点的に読んで、あとは自分で解決してね。 (問1) 2オペランドアドレッシング(double operand addressing) … 3-2 (30) クリア(clr)命令 … 4-6 (52) 加算(add)命令 … 4-25 (71) (問2) 直接アドレッシング(direct addressing)と自動デクリメント(autodecrement) … 3-4 (32) 転送(mov)命令 … 4-23 (69) (問3) 差分(間接)アドレッシング(differed (indirect) addressing) … 3-10 (38) 今君が手元で使っているであろう某系のCPUよりも随分素直で理解しやすいよ。
- 627 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 04:53:36 ]
- Cで書くならこうかな?
register short int r0 = 0; r0 += 1; r0 += 2; r0 += 3; r0 += 4; register short int r1 = 100; *--r1 = 0; *--r1 = 0; *--r1 = 0; *--r1 = 0; *(short int *)100 = 0;
- 628 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 04:55:04 ]
- おまいら優しすぎ。
- 629 名前:デフォルトの名無しさん [2006/10/16(月) 04:57:31 ]
- まってください
>>626 わざわざありがとうございます ですがその資料ホントに読めません・・・ あと習い始めたばかりでまだ実行とかは全く習ってないししたこともないんです 書いてある問題の意味すらわからなくて、今答えの見当もつかない状態なんです・・ 本当にお願いします・・
- 630 名前:626 mailto:sage [2006/10/16(月) 04:58:52 ]
- おわwww間違えてるしw
問3は差分アドレッシングの問題じゃないわ。何に気をとられていたのやらorz 問3はたぶん絶対アドレッシング(absolute addressing)の問題。 関連ページは 3-12 (40) >>627 それほぼ答えじゃんorz ま、俺は別にいいけどね。
- 631 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 05:00:17 ]
- 確か @ やら # はウニッ糞のシェルにとって特別な意味があるので
UNIックソのPDP11アセンブラは>>622とは違う文字使っていたような希ガス
- 632 名前:630 mailto:sage [2006/10/16(月) 05:02:18 ]
- 関連ページは3-12・・・じゃなくて本当は 3-13 (41)
また間違えましたよ。 すぐ隣のページだけどね:-p
- 633 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 05:05:28 ]
- >>627
× register short int r1 = 100; ○ register short int *r1 = 100;
- 634 名前:デフォルトの名無しさん [2006/10/16(月) 05:07:04 ]
- >>627
ありがとうございます でもCは全く習ってなくて、何が書いてあるのか理解できません・・・ 本当にすみません できれば>>614の形式で教えていただけないでしょうか・・ 手書きで説明を書いて提出するので・・・ >>630 わざわざ報告ありがとうございます
- 635 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 05:15:23 ]
- おまい、貴重なPDP11のマニュアルを拾ってきてもらって、その212頁もある
マニュアルの中から僅かな量のエッセンスを抽出してもらって、あまつさえ 重要語句に日本語を付加されてまでまだ「読めません」かよ。 読めないのではなくて 読 ん で い な い だろ。 今から>>622読んで理解しろ。実際ここにいる連中も1時間程度で読んで理解しているんだ。
- 636 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 05:18:20 ]
- >>635
それとCのソースもな。
- 637 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 05:30:50 ]
- おまいら優しすぎ
- 638 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 05:42:08 ]
- 解説者が一人多役の自演でなければ、の話だが。
- 639 名前:デフォルトの名無しさん [2006/10/16(月) 05:51:08 ]
- 30分ほど読みましたがやはりわかりませんでした・・・
教科書読んでも全然わからなくて・・・ >>627はどういうことなんですか・・? 実行結果・・? もういやだ・・もうこんな時間・・どうにもできない・・・だれか・・
- 640 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 06:07:13 ]
- >639
残念でした。 2chに聞いたのが間違いなんだよ 何でもサポートセンターじゃない 先生のところへ行って直接手取り足取り教えて貰いな 親切に教えて、しかも学ぶ事そのものまで教えてまでいるスレ住人を 裏切り続けてるのは外ならぬお前なんだと言う事を覚えておけよ?
- 641 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 06:09:32 ]
- ネタかも知れないレスにマジレスしちまった。
そろそろ寝るか。 30分ぐらい。
- 642 名前:デフォルトの名無しさん [2006/10/16(月) 06:18:11 ]
- 提出物なので先生には教えてもらえません・・・
裏切り続けてると言われても・・言われたことはしました・・ その上でなら仕方ありません・・ 時間があるのならゆっくり勉強すればいいかもしれませんが、もう時間がなくて一から勉強することができません・・・ だからもう・・・
- 643 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 06:23:02 ]
- ここまでヒント貰って分からないんなら、もう単位は諦めるしかないんじゃない。
人の答え丸写しして本人は理解してないのに単位取るなんて不正だし。
- 644 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 06:23:44 ]
- 課題出されてから提出期限まで幾らか時間があったんだろ?
くだらん言い訳はするな。 それに提出物だから教えて貰えないというのもおかしな話だ。 質問を受け付けてくれない先生か。さぞお気の毒だこと。 そうやって言い訳し続けて、裏切り続けるがいいさ。 と、漏れもマジレス
- 645 名前:デフォルトの名無しさん [2006/10/16(月) 07:06:33 ]
- お願いします・・・
何を言われてももうこれしかありません・・・
- 646 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 07:09:06 ]
- もういい加減愛想が尽きたよ。
答えを教えたって豚に真珠だろうさ。
- 647 名前:デフォルトの名無しさん [2006/10/16(月) 07:21:02 ]
- それでもお願いします・・・
- 648 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 07:51:54 ]
- おまえら優しいな。
2chでこんなに優しくしてもらえるなんてそうないぞ。 問1ぐらいは分かるだろ。 ま、残りは空欄でも仕方ないな。
- 649 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 08:00:04 ]
- 問1すらわからないなら単位はあきらめた方がいいな
- 650 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 08:22:28 ]
- なんじゃここ、昼夜逆転したニート君どもがが学生君を嬲ってやがるw
やっぱりヒキニト君ってイライラが溜まってるんだね。 そんなの俺なら「宿題は自分でやれよ」の一言で済ますけど。
- 651 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 11:21:27 ]
- r0が
- 652 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 11:23:32 ]
- 失敗
r0がゼロレジスタか否かで結果が変わるな PDP11が確実でなければ
- 653 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 12:25:35 ]
- 時間が無いなんて何を言ってるんだ?
学生なら幾らでも時間はあるだろ 4年で卒業できる実力が無いならおとなしく留年しろ それが世のためだ
- 654 名前:デフォルトの名無しさん [2006/10/16(月) 12:26:48 ]
- あと30分でその授業が始まります‥
本当にお願いします…
- 655 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 12:42:11 ]
- このスレタイに使われている顔文字の意味がわからくなってきたぞ。
始めて↓のスレタイを見たときは、 アセンブラ… (;´Д`) ハァハァ (Part6) pc5.2ch.net/test/read.cgi/tech/1087897801/ ああなるほど、アセンブラだから汗んブラってことで 汗をかいているって意味か、もしくはブラジャー見てハァハァ言ってるのかって 意味なのかとわかった。んだが・・・
- 656 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 12:53:52 ]
- >>655
そういう意味はないぜ。 伝統的に「Part*」でなく顔文字でスレ名つけてるだけで。 そのスレタイだったら、アセンブラにハァハァしてると 解釈するのが自然で、汗とかけてるわけじゃない
- 657 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 13:26:09 ]
- 汗まみれのブラジャー着けたままセックスして感じてる女がハァハァいってる
ところを想像した やばい、想像しただけで勃起する
- 658 名前:デフォルトの名無しさん [2006/10/16(月) 14:14:38 ]
- あぁ、、PDP-11とは懐かしいな。何でPDP-11なのか分からんけど。実機で動いた方が絶対に面白いし、分かり易いのに。MIPSとかでいいのにな。いや、漏れも大学の時のアセンブラ講義はPDP-11のシミュレータだったけどさ。
- 659 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 14:14:58 ]
- 全く知らない漏れでも>>622のマニュアル流し読みしたら理解できた。
わからないとか言ってる奴は絶対に問題を自力で解こうと思ってないし、 マニュアルも英語だからという理由で読もうともしてない。 以下、アドレスや数値は8進数表記 問1 R0を000000にする R0に1を加算する→R0は000001 R0に2を加算する→R0は000003 R0に3を加算する→R0は000006 R0に4を加算する→R0は000012 問2 R1を000100にする 000100番地を000000にする、R1を000076にする 000076番地を000000にする、R1を000074にする 000074番地を000000にする、R1を000072にする 000072番地を000000にする、R1を000070にする 問3 000100番地を000000にする
- 660 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 14:19:59 ]
- >>659
たんなる釣りだろ。
- 661 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 15:06:00 ]
- 8進数か、手強いな。16進数に慣れきってしまった今となっては。
- 662 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 15:37:49 ]
- 英語がどうとか逝っても肝心の所は図とか記号あるから英語あんま読めなくてもだいたいわかるし
- 663 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 15:47:53 ]
- アセンブラの宿題スレもそこそこ需要があるみたいだね。
このスレを見る限り。(>>36-55,>>88-98,>>191-207,>>244-254,>>572-605,>>614-659) こちらに質問された方はお気の毒でした。結局間に合ってないよね。 でも、資料提供から問題箇所の切り出し、C言語による整理とここでこんなに 丁寧に指導してもらえることってそうはないから、努力して理解に努める 姿勢を見せれば良い方向に転んだかもしれないあたり、少し残念。 それはさておき。 ここの姉妹スレとしてアセンブラの宿題スレを立てようと思うが、どうだろうか。 意見がなかったら近いうちに立てるよ。住人さんが定着するかどうかはわからないけど。
- 664 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 16:12:14 ]
- >>36って5月だよな。月1回程度って少なくない?
- 665 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 16:22:41 ]
- 宿題スレ、立ててみるのは面白いと思うよ。
スレタイに「宿題」「質問」「アセンブラ」などの単語が入ってれば ある程度人は集まると思う。 過疎化や実質非宿題スレ化などが懸念されるが、 ネタが増えそうな気もするし、俺は立てるのに賛成。
- 666 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 16:39:46 ]
- 月一回程度、これを多いと思う香具師はいないものとして。
少なすぎるか、適量かで意見が分かれそうだな。 このペースだと複数問題のパラレル同時進行てな事態はそうは起きないだろうから 漏れは丁度いいと思う。もうちょい増えても構わんが。
- 667 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 17:33:55 ]
- いらねーだろ。
本音としては、ここに集う宿題君を肴にしてお前らと暇つぶしするのがいい。 宿題は自分でやれ。2chはお前らの代返君じゃねーんだぞと。
- 668 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 18:05:39 ]
- 宿題スレを肴にすればいい。
それに、質問して来た人を直接ここで肴にするのは ちょっと気が引けるし。
- 669 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 18:12:28 ]
- 近頃のアッセン使いは意地が悪いですね
- 670 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 18:41:17 ]
- 実はただのニートだからなw
- 671 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 18:45:56 ]
- >>659
> 問2 おしい。32ページ。 > -(Rn) Register is decrimented and then used as a pointer. つまり、まず減算してからポインターとして使う。
- 672 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 20:57:01 ]
- 問題:
STC SBB EAX,EAX ADD EAX,13 DEC EAX XOR EAX,9 NOT AX SHL EAX,8 上の命令を実行した後、EAXに入っている値を10進法で求めよ。
- 673 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 21:58:43 ]
- >>672
じぶんでやれかす
- 674 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 21:59:50 ]
- 「〜を求めよ」ってテスト問題の答えに
「じぶんでやれかす」って一度書いてみたいなw
- 675 名前:673 mailto:sage [2006/10/16(月) 22:01:51 ]
- 暇つぶしで回ってただけだからおれもわかんねーよwww
- 676 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:03:48 ]
- えーと13たして9かけて8でわるのかな?
- 677 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:14:07 ]
- 汗まみれのブラジャー↑アッー!↓
- 678 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:48:25 ]
- 16770816
- 679 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 23:22:10 ]
- これか
game10.2ch.net/test/read.cgi/mmosaloon/1156941719/l50の172 ↑www.usamimi.info/~nkra/desktop/GEpassword.html いつまでもこんなことやってたら高校生とかになっても厨のままだよ
- 680 名前:デフォルトの名無しさん [2006/10/16(月) 23:27:11 ]
- 16777216だよ
- 681 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 07:01:21 ]
- アセンブラ面白い問題教えてスレとか面白そうじゃないか?
誰か建てろ。
- 682 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 15:07:18 ]
- 仮にアセンブリ宿題スレ作るにしても、テンプレどうするよ?
質問者は、質問の際に以下の項目を記入する事。 【機種】 【CPU】 【アセンブラ】 ※判らない人は判る範囲で埋めて下さい。 アセンブリは環境によってコードが異なるります。 3つとも空欄や不明の場合、回答者が趣味で使っている環境で答えますが それがあなたの環境で実行出来るか否かの保障は出来ません。
- 683 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 15:18:02 ]
- s/答えますが/気が向いたら答えるかも知れませんが/
- 684 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 16:00:27 ]
- 最低限CPU名だけは書いてもらうことを優先すべきでないかな。
もちろんわかる人には環境を詳しく書いてもらうとして。
- 685 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 16:04:56 ]
- > コードが異なるります。
- 686 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 16:29:58 ]
- アセンブラ
アセンブリ アセンブル
- 687 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 16:43:58 ]
- アセンブリ言語をアセンブルするのがアセンブラだが、
アセンブリ言語を指してアセンブラと言うことも多い。
- 688 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 17:26:57 ]
- アセンブラ
アセンブリ アセンブル アセンブレ アセンブロ つっこみいれてやれよ。
- 689 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 23:00:47 ]
- アセンブロとはきどんなお風呂ですか?
- 690 名前:689 mailto:sage [2006/10/17(火) 23:01:30 ]
- 余計な「き」が入った
吊ってくる
- 691 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 23:30:02 ]
- 1.[8091h][8090h]←[8080h]*2+[8081h] 和を16ビットで求める
2.[8085h]←[8051h]+[8052h] を計算し、符号付2進数加算としてのオーバーフローを判定する この二つを8085プログラムで書けという問題なのですがまったく分かりません。 どなたか分かる方教えてください。よろしくお願いします。
- 692 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 23:49:46 ]
- 宿題スレに逝け
- 693 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 00:05:04 ]
- >>691
宿題スレに逝け アセンブラの宿題質問スレ pc8.2ch.net/test/read.cgi/tech/1161097445/
- 694 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 00:11:22 ]
- 結局立てたんかい。
次からテンプレに追加せんとな。
- 695 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 00:42:24 ]
- Z80ならよく覚えているんだがなぁ〜。i8085は知らんわ。残念。
- 696 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 00:58:48 ]
- >>688
まるでソンブレロみたいだ
- 697 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 01:50:04 ]
- 3 名前: デフォルトの名無しさん [sage] 投稿日: 2006/10/18(水) 00:06:56
ファミコンアセンブラはまじで楽しい。 それ以外のアセンブラなんて人間にすすめるもんじゃない。
- 698 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 06:29:45 ]
- あんな変態アーキテクチャ、人に勧められるものかよ。
まあ、x86系の石よりはマシだが。 68000の優るものは何もない。
- 699 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 06:36:39 ]
- 68kは遅いのが致命的だな。
JAVAチップだって結局(ry
- 700 名前:・∀・)っ-○◎○新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/10/18(水) 06:37:48 ]
- ナーシャ・ジベリを越える天才現るか?
- 701 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 09:22:08 ]
- 彼は今何をしているのだろう?
- 702 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 19:45:53 ]
- アセンブリをアセンブラでアセンブルすんだよ
アセンブラをアセンブラでアセンブルする厨は(・∀・)カエレ!
- 703 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 00:14:57 ]
- アセンブラってやっぱ C で書かれてるのかな?
- 704 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 00:24:20 ]
- >>703
そういうのもそうでないのもある。 awkで書かれてるのとかもあるよ
- 705 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 00:27:38 ]
- >>703
普通の言語のコンパイラならともかく、 アセンブラは何も考えずにアセンブルできるから 言語は何でもいいんじゃないの。
- 706 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 01:18:25 ]
- 漏れは8085アセンブラをbasicで書いたぞ。
- 707 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 03:04:40 ]
- シナプスで書かれたアセンブラもあるな
勝手に最適化してくれるらしいぞ
- 708 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 06:31:39 ]
- 紙とエンピツで入出力
- 709 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 07:36:04 ]
- こういうのって許されるやり方ですか?
もしかして相当する命令あるのかなぁ 初心者ですいません・・・ 0100 mov AX,0300 0103 push AX ; Arg1 0104 call 200 0200 mov AX,SP 0202 add AX,2 0205 mov SP,AX 0207 ret 0300 int 20 ; おわり
- 710 名前:709 mailto:sage [2006/10/20(金) 07:38:30 ]
- 板汚しすいません。解決しました
- 711 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 13:06:04 ]
- mov ax, 0x300
push ax call TEST TEST: push bp mov bp, sp mov ax, [bp + 4] pop bp ret 普通はこんな風に使う。 アセンブリ言語プログラムをCから呼ぶのと同じ感じ。 上のはnasm16bitプログラムで書いてある。 そのためbp+4なのだ。 +4な理由は、戻りアドレス16bitとbpをプッシュした16bitで合計4バイトってこと。
- 712 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 13:38:16 ]
- >>711
引数で渡された値に帰り先を変更したいようだから それではやってる事が全く違うんじゃないか?
- 713 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 13:42:00 ]
- >>711
偉そうに嘘を教える知ったか乙
- 714 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 14:05:59 ]
- うははwwwちゃんと読んでいなかったwwwww
吊って来るorz
- 715 名前:デフォルトの名無しさん [2006/10/21(土) 02:50:55 ]
- mov ax,[si+1]はOKで
mov ax,[di+1]はNGですか?
- 716 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 11:34:17 ]
- >>709
retの戻りアドレスをArg1に変更したいだけならこうじゃないか? 0100 mov AX,0300 0103 push AX ; Arg1 0104 call 200 0200 pop AX ; 本来のret先をスタックから取り除く 0201 ret ; 103でpushした値がスタックトップなのでそこにretする 0300 int 20 ; おわり
- 717 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 15:15:42 ]
- すいません。
入る大学間違えたんですが。
- 718 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 17:24:31 ]
- >>717
だから?
- 719 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 17:35:06 ]
- >>717
よくあることだ。気にするな。
- 720 名前:717 mailto:sage [2006/10/23(月) 17:44:40 ]
- すいません。
誤爆です。 (なぜか向こうにレスがつかなかった。)
- 721 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 17:45:08 ]
- >>720
ret
- 722 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 18:32:58 ]
- retって何?
- 723 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 19:24:31 ]
- iret
- 724 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 07:09:34 ]
- irete
- 725 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 08:07:59 ]
- アッー!
- 726 名前:デフォルトの名無しさん [2006/10/24(火) 10:05:42 ]
- MASM Ver8はどこで手に入りますか?
- 727 名前:726 mailto:sage [2006/10/24(火) 10:10:23 ]
- ごめんなさい。
>>147にありました
- 728 名前:デフォルトの名無しさん [2006/10/24(火) 13:36:18 ]
- dwordってなんですか?
- 729 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 13:44:42 ]
- どうbぇをrd
- 730 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 13:53:05 ]
- 4バイト?
- 731 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 14:01:41 ]
- DWORDはDOUBLE WORDなのでWORD2つ分。
ただし、WORDが何バイトか、あるいは何ビットかは知ったこっちゃない。
- 732 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 15:33:36 ]
- 2CHとはアセンブラでどんな意味ですか?
- 733 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 15:40:22 ]
- jmp @-1
- 734 名前:デフォルトの名無しさん [2006/10/24(火) 18:15:29 ]
- ?
- 735 名前:デフォルトの名無しさん [2006/10/24(火) 18:26:32 ]
- 2ちゃんのことじゃないですよ2CHの意味することを教えてください
- 736 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 18:32:33 ]
- 2CHは16進法としか解釈できないよね。
10進法なら44だ。 これが表す命令はCPUによって違うが、 1byteの2CH命令を持つCPUって何だろ。
- 737 名前:デフォルトの名無しさん [2006/10/24(火) 18:33:28 ]
- ありがとうございます
- 738 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 18:35:59 ]
- なーんだ。そういう事か。
マジレスすると、炭素と水素が結合した物が2個。
- 739 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 23:15:41 ]
- そりゃ無理だ。
- 740 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 23:52:37 ]
- >>736
z80なら inc l
- 741 名前:736 mailto:sage [2006/10/24(火) 23:59:54 ]
- >>740
サンクス。
- 742 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 10:56:51 ]
- >>740
ザイログフォーマットではxxxhという表現は無いな 2chだとインテルフォーマットだと思うぞ だから INC L だな
- 743 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 11:21:37 ]
- 俺が思うに、やっぱりね、良い音楽もあるけど悪い音楽もある!
- 744 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 11:37:03 ]
- iret
- 745 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 11:58:45 ]
- >>743
いい音楽って例えばどういうの?
- 746 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 12:55:15 ]
- inc l
- 747 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 13:25:02 ]
- アニオタ帰れ
- 748 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 22:46:00 ]
- そういやアニメ界には
搭乗してるユニットのOSを書き換えながら 戦闘するパイロットが居るんだっけか
- 749 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 22:54:05 ]
- >>748
しーぽん
- 750 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 01:51:03 ]
- >>748 実は別OSがその下で動いていたらどうだろう?止めることなく書き換えも可能になるな。
- 751 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 01:54:16 ]
- 無停止システムなんかだと実行中のOSにパッチ当てるぐらいはできて当然。
- 752 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 01:57:33 ]
- 無停止システムってなんだよ?
てか、なんちゃら機関と同じで実現できないだろ。
- 753 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 02:04:47 ]
- スーパーバイザモードで動いてるOSの下に
ユーザーモードで動いてるOSがいくつも走ってて そっちを書き換えてた可能性は十分ある。 それほど不自然ではない気もするぞ。 別に0から全てのコード書き上げたってんじゃないんだろう?
- 754 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 02:17:04 ]
- 迂闊に特権コード書き換えられるようではそれ自体がセキュリティホールになりかねないが、
OSのカーネルだろうがメモリ上の単なるデータに過ぎないんだから、適切な権限さえあれば いくらでも書き換えることができる。アーキテクチャにもよるけどな。
- 755 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 02:19:01 ]
- >>752
勧善懲悪覗機関
- 756 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 02:41:26 ]
- アセンブリは無敵ってこった。C言語すらもただのゴミに見える…
- 757 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 03:56:04 ]
- 無敵かもしれんが、おいらには難解過ぎるよ。
全然勉強が進まん…orz
- 758 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 11:16:36 ]
- 種の話ならRTOS上のアプリが糞だったのでスケジューラと制御ライブラリの呼び出しパラメータに機体の癖を考慮した誤差を加えただけみたいに見えた
- 759 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 12:07:39 ]
- よくわからんが、俺もコーディネーターになりてえよw
- 760 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 12:32:12 ]
- ようするに篠原の技術は世界一って事だ
- 761 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 17:20:36 ]
- ネルガルだよ
- 762 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 18:24:59 ]
- >761
オモイカネがOSだったんだw
- 763 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 00:14:18 ]
- >>759
希望はよくわかった。 今日から君はコーダーだ。
- 764 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 02:08:24 ]
- 今日から僕はリコーダーだ。
- 765 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 07:41:49 ]
- きょうから俺はあの娘のリコーダーだと申したか
- 766 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 08:24:40 ]
- >>763
極悪人事だな
- 767 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 13:26:34 ]
- 僕のバズーカ凄いんだぞ(涙目)
- 768 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 15:30:01 ]
- >>765
おっさんの喘ぎ声がでるようなリコーダーはいりません!
- 769 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 16:15:05 ]
- すいません。質問です。
486CPUでCR0レジスタの30と29ビット目を1にすると キャッシュ機能を無効にすることが出来るのでしょうか?
- 770 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 16:27:13 ]
- キャッシュの破棄もしなきゃいけないんじゃない?
- 771 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 16:29:42 ]
- 1次キャッシュを無効にしてWindowsを立ち上げるとすごく遅いね。
- 772 名前:デフォルトの名無しさん mailto:sage [2006/10/30(月) 03:26:21 ]
- 初期のNetwareはHDD引っこ抜いても動いてたとかとか。
- 773 名前:デフォルトの名無しさん [2006/10/30(月) 15:02:59 ]
- 私の頭は利口だ
- 774 名前:デフォルトの名無しさん mailto:sage [2006/10/30(月) 16:01:34 ]
- あなたの頭には利く口があるのか
- 775 名前:デフォルトの名無しさん [2006/10/30(月) 16:02:32 ]
- ログ読んだけどアセンブラ書くのに一番簡単な言語って
Rubyとかじゃないの?
- 776 名前:デフォルトの名無しさん mailto:sage [2006/10/30(月) 20:30:24 ]
- >>775
よく分からないがTTLですらアセンブラは存在していたのになぜRubyなんか持ち出す? awkで十分だよ
- 777 名前:デフォルトの名無しさん mailto:sage [2006/10/30(月) 22:10:47 ]
- それpl(ry
- 778 名前:デフォルトの名無しさん mailto:sage [2006/10/30(月) 23:18:47 ]
- TTLでアセンブラ?
ビットスライス組み合わせてニーモニックからバイナリへの変換でもしてたん?
- 779 名前:デフォルトの名無しさん mailto:sage [2006/10/31(火) 07:34:25 ]
- nasmが開発停止したと思ったら、flat assemblerなんてのが出てるんだな。
互換性はあるともないとも書いてないのが…使ってる香具師いる?
- 780 名前:デフォルトの名無しさん mailto:sage [2006/10/31(火) 08:20:28 ]
- 無いだろ。ただ構文わかりやすいな。
nasm派はYASMでおk
- 781 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 13:03:08 ]
- >>691
お前の大学特定した
- 782 名前:デフォルトの名無しさん mailto:sage [2006/11/04(土) 05:41:08 ]
- お前の自宅特定したw
- 783 名前:デフォルトの名無しさん mailto:sage [2006/11/04(土) 13:24:43 ]
- お前の性癖特定した
- 784 名前:デフォルトの名無しさん mailto:sage [2006/11/05(日) 11:17:02 ]
- ばれた!ずらかれ!
- 785 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 01:36:59 ]
- おまえも好きだろ?ハイヒール
- 786 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 01:40:21 ]
- ブルマ復活きぼんぬ
- 787 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 05:38:35 ]
- 天然のブルマってもう絶滅したの?
- 788 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 06:18:24 ]
- >785
「Romanticが止まらない」なら好きだな
- 789 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 06:23:44 ]
- ブールーマー(・∀・)イイ!
ブールーマー(・∀・)イイ! あんぱーんあんぱーんあんぱんあんぱん あん!ぱん!
- 790 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 10:27:01 ]
- >>785
ハイヒール大好きだけどバンプスとミュールも大好き カノジョできたら無理矢理はかせてやりたい
- 791 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 13:15:54 ]
- バレーボールのブルマじゃね?
- 792 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 00:58:56 ]
- >>790
夏の薄着にはピンヒールのサンダルがちょっとイイ
- 793 名前:デフォルトの名無しさん mailto:sage [2006/11/16(木) 05:24:25 ]
- 組み込み技術者足りねえってよ。
みんな、がんがれ
- 794 名前:デフォルトの名無しさん mailto:sage [2006/11/16(木) 20:49:50 ]
- 今どきは組み込みもほとんどCで出来ちゃうんじゃなかろうか。
- 795 名前:デフォルトの名無しさん mailto:sage [2006/11/16(木) 23:41:05 ]
- 汗ブルマで掻くのはスタートアップルーチンと割り込みハンドラくらいだな
- 796 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 09:36:20 ]
- コンパイラが使って欲しくない命令使うんで、インライン使わざるを得なかった
そもそもいらん信号出すような命令残しておくなよ。バグだろ?>某社
- 797 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 10:56:54 ]
- >>796
過去への優しさです。
- 798 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 12:07:06 ]
- そんな優しさなんて要らない
- 799 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 12:21:00 ]
- >>797
おまえの優しさが人を傷つけていることになぜ気づかない?
- 800 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 14:28:58 ]
- >>799
それは仕様です
- 801 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 16:20:18 ]
- 「愚か者は己が愚かなことに気づかない」
- 802 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 22:35:35 ]
- 「ぬるぽはぬるぽ」
- 803 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 23:34:19 ]
- >>802
「ガッはガッ」
- 804 名前:デフォルトの名無しさん mailto:sage [2006/11/19(日) 18:11:49 ]
- 愚か者は愚か者であると見抜ける人でないと
(アセンブラを使うのは)ぬるぽ
- 805 名前:デフォルトの名無しさん mailto:sage [2006/11/20(月) 10:08:39 ]
- アセンブラ、アメリカ専用ブラウザなんでしょ。
- 806 名前:デフォルトの名無しさん mailto:sage [2006/11/20(月) 14:04:08 ]
- 小林亜星専用ブラジャーです
- 807 名前:デフォルトの名無しさん mailto:sage [2006/11/20(月) 14:22:00 ]
- それはあなたを幸せにしますか?
- 808 名前:デフォルトの名無しさん mailto:sage [2006/11/20(月) 19:26:33 ]
- 亜星が人々を幸せにすることはありません
- 809 名前:デフォルトの名無しさん mailto:sage [2006/11/23(木) 11:25:49 ]
- パッとさいでりあ〜♪
- 810 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 00:22:11 ]
- ちょっと質問。
nasmで作ったobjファイルをリンクして、ベタファイルとして出力できるようなフリーのリンカーってある? 例えば、 db 0,1,2,3 ってだけのa.asmと、 db 4,5,6,7 ってだけのb.asmをアセンブルしてそれぞれa.obj、b.objを作り、それをリンクして 0,1,2,3,4,5,6,7 というバイナリファイルを作れるようなの。 alinkでは無理だったんだが・・・
- 811 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 00:24:04 ]
- >>810
コードに明示されない順番依存ってリロケートとしておかしくないの?
- 812 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 00:33:29 ]
- >>811
ごめん、サンプルは適当に書いた。 要は、exeとして必要な部分を一切省いた、純粋にアセンブラで記述した部分だけを出せるリンカーって事で。 nasmで-f BINを指定したときと同じようなイメージ。
- 813 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 09:50:16 ]
- 昔はexe2binを使ったり自分で切り出したりしていたな
objと言われてもOMFかcoff(win32)かわからない OMFならobj2binがgoogleでヒットするな
- 814 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 10:07:04 ]
- nasm -fbin a.asm
nasm -fbin b.asm copy /b a+b hoge.bin じゃ駄目なの?
- 815 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 11:02:32 ]
- Microsoft Macro Assembler 8.0 (MASM) パッケージ (x86 用)
www.microsoft.com/downloads/details.aspx?FamilyID=7A1C9DA0-0510-44A2-B042-7EF370530C64&displaylang=ja
- 816 名前:810 mailto:sage [2006/11/26(日) 23:38:21 ]
- レスd
>>813 一応どちらでも出せるんで、ツールに合わせます。 >>814 a.asmからb.asmにあるラベルを参照したりすることがあるので、単純にくっつけるのはまずいです。 >>815 MASMのマニュアル?を探してみましたが、どのオプションでそれができるか不明でした。 どれか使えばできますか?
- 817 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 08:35:47 ]
- 純粋なアセンブラの話題からは弱冠ずれるんですが、BIOSファンクションコールの一覧が載ってるサイトありませんか?
できれば日本語がいいんですが・・・
- 818 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 10:36:46 ]
- 何のBIOS?
- 819 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 11:09:31 ]
- PCのですね。
MS-DOSとかが利用するような。
- 820 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 11:27:33 ]
- AT? 98?
- 821 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 11:41:22 ]
- PC-9801でお願いします。
できればATも参考に知りたいですが・・・
- 822 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 11:57:58 ]
- 古本屋なりで「PC-9800シリーズ テクニカルデータブック」のシリーズでも探せ。
多分それが一番手っ取り早い。
- 823 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 12:24:56 ]
- 俺のアセンブリ言語入門っていう1992年発刊の本の巻末に一覧表があるYO
- 824 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 16:42:32 ]
- そうですね・・・
できるだけ早く欲しかったんですが。 明日、市の図書館とBOOKOFFあたってみます。
- 825 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 17:07:29 ]
- osdevに書いてある予感
- 826 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 20:31:23 ]
- そんなに古い情報はないだろう。
AT BIOSは"InterruptList"があるけど。
- 827 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 21:47:09 ]
- メモリとI/Oポート周りならあった
ttp://www.webtech.co.jp/company/doc/undocumented_mem/index.html
- 828 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 00:25:03 ]
- 入手できるかわからんが
PC-9801 プログラマーズBible,東京理科大学EIC編,技術評論社,ISBN4-87408-615-2 UNDOCUMENTED 9801/9821 Vol1,小高輝真,河野健,インプレス,ISBN4-8443-4642-3 に一通り載ってる
- 829 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 01:19:29 ]
-
全部アセンブリで書けばあらゆるソフトは超快速になるのか?
- 830 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 01:52:24 ]
- >>829
そんなの当たり前じゃん。釣りか?
- 831 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 01:55:23 ]
-
じゃあアセンブラで2chブラウザつくってくれ インタフェースもおしゃれにしてくれよな!
- 832 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 02:11:19 ]
- CPUが複雑になってて、コンパイラも頭よくなってるので、一概にそうとも言えん。
つーか、CPUがどういう動作をするか完全に理解してて、各命令の動作速度、スレッドまで考慮できれば アセンブラの方が早くできるだろうなw マンドクセ('A`)
- 833 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 02:34:26 ]
- >>832
それって総当りでいつかは暗号解けるだろ、 と似たようなアルゴリズムだよね
- 834 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 12:45:32 ]
- Core2Duoなど最近のCPUの情報公開が不十分なのが問題なのであって
本来は総当りする必要はない
- 835 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 15:19:38 ]
- 猿にキーボード持たせて待ってればできるよ
- 836 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 22:24:16 ]
- >>835
それまで宇宙があればね。
- 837 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 22:28:07 ]
- \
お そ .い ヽ か の や | し り ` ,. -──- 、 い .く / /⌒ i'⌒iヽ、 つ / ,.-'ゝ__,.・・_ノ-、ヽ は i ‐'''ナ''ー-- ● =''''''リ _,....:-‐‐‐-.、 l -‐i''''~ニ-‐,....!....、ー`ナ `r'=、-、、:::::::ヽr_  ̄ \ヽー' !. t´ r''"´、_,::、::::} ノ` ,.i'・ ,!_`,!::::::::::::ヽ ヾ、 ゝゝ、,,ニ=====ニ/r'⌒; rー`ー' ,! リ::::::::::::ノ i`''''y--- (,iテ‐,'i~´,ゝ'´  ̄ ̄ヽ` :::::::::::ノ .| !、,............, i }'´ _ 、ー_',,...`::::ィ' ●、_!,ヽ-r⌒i-、ノ-''‐、 ゝ`ーt---''ヽ'''''''|`ーt-'つ ( `ーイ ゙i 丿 ;'-,' ,ノー''''{`' !゙ヽノ ,ヽ, `ー--' --'` ̄ `ー't,´`ヽ;;;、,,,,,,___,) ヽ'-゙'" (`ー':;;;;;;;;;;;;;;;ノ ``''''''``'''''´
- 838 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 22:44:38 ]
-
アセンブラっていまどこでインストールすればいいんだ? IDE使わずに100%フリーな環境でそろえたいんだけど
- 839 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 22:46:57 ]
- Linuxでも使え
- 840 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 22:50:35 ]
- 会社がWindowsなんだよ
- 841 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 23:01:55 ]
- 仕事しろよ
- 842 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 00:23:40 ]
- >>838
NASMかMASM>815
- 843 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 00:40:22 ]
- mingw入れればgasが使えるしC/C++/C99/Fortran/Javaまで1000%FREEEEな環境がそろう
しかもIDE無しでだ なおこのレスには一部誇張が含まれる
- 844 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 00:51:40 ]
- >815のリンク先みたら
>このパッケージをインストールするために、お使いのコンピュータ上に Visual C++ 2005 Express Edition がインストールされている必要があります。 これフリーなのか?
- 845 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 01:04:48 ]
- ふりーだ。
- 846 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 01:11:53 ]
- 無料だがfreeではない
- 847 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 01:12:15 ]
- でもIDEじゃねーか
- 848 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 05:14:01 ]
- リンカーのためだけにインストールしてんだろ?
それだけ取り出して IDE本体は削除すればいいんじゃね?
- 849 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 07:03:15 ]
- >>844
インストール中にTempディレクトリを見ると、VS2005EEなしでも取り出せるな。
- 850 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 08:47:45 ]
- ちなみに>>815は商用不可だ。
- 851 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 19:23:12 ]
- CodeZineでx86のアセンブラの連載やってる筆者、リア中らしいよw
そういわれてみるとちょっと文章変だったり、ところどころ勘違いっぽい記述があるけど それを差し引いてもすごいよな。
- 852 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 23:04:33 ]
- リアル中毒者
- 853 名前:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6 mailto:sage [2006/12/01(金) 23:39:48 ]
- それって赤坂玲音のこと?俺の1つ年上じゃんwww
- 854 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 23:45:53 ]
- いやそっちじゃないよ。
っていうか、その人はそこそこ有名じゃんw 厨房なんて思うわけないよ
- 855 名前:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6 mailto:sage [2006/12/01(金) 23:51:36 ]
- codezine.jp/a/article/aid/420.aspx
じゃあこっちか 大御所ばっかじゃねーかwwwww
- 856 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 23:54:01 ]
- 世話が焼けるなあもう。。
codezine.jp/a/article/aid/505.aspx
- 857 名前:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6 mailto:sage [2006/12/02(土) 00:07:01 ]
- 「団子」でなんか投稿してみるかな。。。
- 858 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 12:56:36 ]
- 死ねばいいのに
- 859 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 03:44:12 ]
- masmの日本語のドキュメントって
どっかでダウンロード出来ないんですか?
- 860 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 21:41:09 ]
- 昔は録音するみたいにテープに記録してたけど、
今はだいぶ便利になったみたいだね。 おっさんはマジで市ねよ。
- 861 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 10:58:56 ]
- テープは今でも普通に使われているだろ
DDSとか
- 862 名前:デフォルトの名無しさん mailto:sage* [2006/12/09(土) 22:31:37 ]
- なんだこのスレは・・・たまげたなぁ・・・
- 863 名前:デフォルトの名無しさん mailto:sage [2006/12/10(日) 12:22:32 ]
- 3ヶ月前の話題の参考になりそう(?)なバイナリめっけた
ttp://www.wex.cn/dwing/mygem.htm
- 864 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 16:36:43 ]
- PowerPCでラベルのアドレスをレジスタに入れるにはどうしたらいいのですか?
- 865 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 21:08:20 ]
- 上位と下位を別々に入れる
- 866 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 14:05:05 ]
- >>865
addis命令というのがあるみたいなのでそれを使ってみます。
- 867 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 10:21:25 ]
- CELLでつか? Macでつか・・・? はたまた組み込み?
- 868 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 17:52:08 ]
- >>867
Macですよ。
- 869 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 21:29:38 ]
- gasでnasmの-f binにあたるものはないのだろうか。
それともld scriptで対処するべきか。
- 870 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 22:10:15 ]
- >>869
そこは自作スクリプトで対応(ry
- 871 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 22:45:39 ]
- >>870
やっぱりか。とりあえず__textセクションだけ抜き出す奴を作った。 これで何とかなると思う。ありがとう。
- 872 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 01:16:14 ]
- ゴルフでもやるの?
- 873 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 01:22:59 ]
- >>872
そう。Mach-Oでやってるの。 いま494bytesのHello, world!が出来たとこ。 普通にCで作ったら8192bytesでしたよ。 ここまでくるのに苦労しましたわ。
- 874 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 18:24:34 ]
- メイン部分がこんな感じのcomならもうちょい縮まる。
mov ax,09h mov dx,offset msg int 21h msg db 'Hello world!',0dh,0ah,'$'
- 875 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 21:25:03 ]
- >>871
ブログで書いてたやつか?
- 876 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 09:52:28 ]
- >>874
そのメッセージ部分で終了できるのか?
- 877 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 10:00:31 ]
- ax=0009なので何もせずに終了
- 878 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 19:19:45 ]
- >>875
そうそう
- 879 名前:874 mailto:sage [2006/12/20(水) 20:01:58 ]
- ミスとか訂正。
mov ah,09h mov dx,offset msg int 21h mov ah,4ch int 21h msg db 'Hello world!',0dh,0ah,'$'
- 880 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 13:11:32 ]
- >>879
縮めるんなら、 mov ah,4ch int 21h を ret にする
|

|