約 1,332,606 件
https://w.atwiki.jp/sevenlives/pages/1957.html
マクロ・アセンブラ? クロス・アセンブラ? インライン・アセンブラ? ニーモニック? GAS? MASM? CASL?
https://w.atwiki.jp/babo/pages/7.html
アセンブラの基本動作 アセンブラの動作 コンパイラが生成したアセンブラソース、または開発者がコーディングしたアセンブラソースを読込み、オブジェクトファイルを生成する。アセンブラソース → 機械語とほぼ一対一で対応するソース アセンブラの使いこなし 記述方法や文法はプロセッサ毎に異なる。 コードを書くシチュエーションは限られので、書く能力は必要な時に学習すればよい。 コードを読める必要がある。デバッガ/逆アセンブラの出力、コンパイルリスト等々の解読のため。 基本的なフォーマット アセンブラは行指向の言語ラベル部(終端が” ”の場合が多い) オペコード部(プロセッサの命令または疑似命令) オペランド部(”,”で区切られ複数記述できる場合が多い) コメント部(”#”,”;”,”*”,”@”等で開始される場合が多い) プロセッサの命令 転送命令(レジスタ⇔メモリ/レジスタ) 演算命令(加減乗除、論理演算、シフト等々) 分岐命令(ジャンプ、条件付きジャンプ、コール等々) 制御命令(割込み禁止/許可等々) mov レジスタ間のコピー stmfd 複数のレジスタ値のストア sub レジスタ間の減算 str レジスタ値のストア ldr レジスタ値のロード bl サブルーチン呼び出し ldmfd 複数のレジスタ値のロード 疑似命令 アセンブラには直接プロセッサーが理解しない命令(オペコード)がある。これはアセンブラに対する指示で、オブジェクトコードの生成方法を指示、定数値を指定、シンボルの属性を指定等々の処理を行う。 セクション制御 text,data,bss等のセクション制御命令 各種の宣言 外部シンボルの定義やシンボルの公開 デバッグ情報、その他主にコンパイラが生成する行番号情報など アセンブル制御、マクロ機能、データ定義 セクション プログラム中で使われるデータや命令はセクションと呼ばれるグループに配置される。.section, .text等の疑似命令で指示。これは命令語とデータでMPUがアクセスする時の属性が異なり、メモリに付加する情報(実行許可等)を制御する必要があるため。(組込み系ではROM/RAMの指定等に用いる) 代表的なセクション テキストセクション(.text) 命令を配置(読込み、実行) RODATAセクション(.rodata) 定数値を配置(読込み) データセクション(.data) 初期化データを持つデータを配置(読込み、書き込み) BSSセクション(.bss) ゼロで初期化されるデータを配置(読込み、書き込み) スタックセクション(.stack) スタック空間を配置(読込み、書き込み、実行) オブジェクトフォーマット 代表的なオブジェクトフォーマット| ELF 主にLinux等で用いられる COFF 主にSVR4等のUnixで用いられる ECOFF,XCOFF 上記のCOFFの拡張 PE MS-Windowsで用いられる OMF インテル社が規定したオブジェクトフォーマット アセンブラのビルド/インストール GNU binutils を使ってクロスアセンブラをビルドする。 GNU binutils の最新版をゲット現在ならばbinutils-2.16.1.tar.bz2をダウンロードする。 作業ディレクトリに展開 以下のコマンドを入力。 $ tar jxvf binutils-2.16.1.tar.bz2 $ cd binutils-2.16.1/ binutiils-2.16.1.tar.bz2はダウンロードしたファイル。 展開するとカレントディレクトリにbinutils-2.16.1が作られる。 configureの実行 以下のコマンドを実行する。 $ ./configure --prefix=/opt/xtool-arm-elf --target=arm-elf prefixオプションは、ビルドされたパッケージのインストール先ディレクトリを指示する。 targetはビルドするターゲットアーキテクチャを指示する。今回は、arm用のクロスアセンブラを作ってみるので、arm-elfを指定する。 ビルド 以下のコマンドを実行する。 $ make all インストール 以下のコマンドを実行する。 $ make install パスの追加 以下のコマンドを実行する。 $export PATH=/opt/xtool-arm-elf/bin $PATH ログインしたら自動的にPATHを設定したい場合は、.bashrcに上記のexportコマンドを追加する。 cygwin環境以外でも利用したい場合は、マイコンピュータのプロパティから環境変数でセットする 動作確認 以下のコマンドを実行する。 $ arm-elf-as --version 以下の内容が表示される。 GNU assembler 2.16.1 Copyright 2005 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. This assembler was configured for a target of arm-elf .
https://w.atwiki.jp/abwiki/pages/611.html
アセンブラ(Assembler)とは、アセンブリ言語をアセンブル(機械語に変換)するもの。 しかし一般的には、アセンブリ言語そのものを指す。 アセンブリ言語とは、機械語=コンピュータの理解できる数値のみの羅列に名前をつけたもの。 ADD SUB MUL DIV MOV JE JNE JGE JLE TEST AND XOR
https://w.atwiki.jp/tekiyakusaikyou/pages/2255.html
【作品名】BALDR SKY 【ジャンル】エロゲ・ADV+ACT 【世界観・補足】 基点世界は現実相応の単一宇宙並みの世界である。 【簡易】小規模都市ほどのアメーバ+攻防一体の分子分解・再構成・吸収+核熱耐性+アメーバ反応 【名前】アセンブラ 【属性】ナノマシンの集合体、灰色のクリスマスの元凶 【大きさ】不定、劇中の最大時は研究所周辺 数万人の人間が犠牲になったほどから小さな都市ほど大きさはあるか 【攻撃力】【防御力】攻防一体、物体に触れることによって融解し吸収する これにより物理攻撃は自動吸収による無効である 処理としては ①分子レベルで解体 ②再度分子レベルで自分と同じように再構成することで吸収 ③ナノマシン自体も常に生成、改造による最適化 これら3つ処理を効率よく行うため独立して指揮を行うプログラムが埋め込まれている 核と同程度の熱量を持つレーザー光線を7分以上連続照射されない限り完全消滅しない 劇中では衛星軌道上から6基の攻撃衛星を使用し上記の攻撃を行うことで排除に成功した 【素早さ】大きさ相応のアメーバ並み 【特殊能力】特になし 【長所】実質物理無効という防御の取りやすい描写があったこと 【短所】グロ画像マジでやめろ 【役柄】ある意味全ての元凶であり主人公(ヒロイン)の彼女(彼氏)を融解し亡き者にした 以降主人公は強い敵意を持って再拡散を止めることに執着している 作中扱いとしては災害に近いがナノマシンの設定上意思はあるので参戦可能であると思われる 参戦 vol.103 226格無しさん2019/08/26(月) 23 40 04.46ID /SAU3i9Z アセンブラ考察 バルドシリーズのネット世界外キャラエントリーは初めて? 小規模都市を1kmほどとして都市破壊から上がる × ドラム 速度的に捕らえられない、レーザー連発でジリ貧 × 第3水晶島 近づく前にE-01連発されるとキツイ ○ キングギドラ(ゴジラ キング・オブ・モンスターズ) 引力光線は無効、洗脳もナノマシンに効くかは微妙なので 噛み付きに来た時にそのまま吸収で勝てる × グレートマジンガー サンダーブレーク負け、やっぱりもう少し上にいるべきじゃないのか鉄也さん × 四足 プラズマ砲負け 無理そうだな、大怪獣から上がり直す × 広瀬雄一 無連発されると厳しい △ キングギドラ 羽ばたきされると近づけないがそれでは倒されないので分け × カイリュー 都市1/3破壊ならはかいこうせん連発負け × 憤怒大公 息負け × GOD? 運命操作負け 無理っぽいので広範囲攻撃に落として上がりなおす ○ アインナッシュ 攻撃来るもの全て吸収で勝てる ○ 赤い木 赤霧は効かない、根も吸収できるので勝てる ○ パラメキア帝国皇帝 街壊滅程度なら耐えれるだろう、雷も有効ではないしそのうち吸収で勝てる × ドゥガチ 核12発も撃たれたら流石に無理だろう ○ ガゾツフス 戦法上突撃に来るので吸収で勝てる ○ ドラグマ 青い焔は効かないのでそのうち吸収で勝てる ○ スーパーツアートグア 食べに来た時に吸収で勝てる △ シュド=メル 攻撃は効かないがこの大きさだと吸収しきれるか微妙 △ マリー・アントワネット 物理しかないので負けないが移動速度的に捕捉不可 ○ フカ 食われてもそのまま体内で吸収続けて勝てる △ 巨大イカ 攻撃ひたすら吸収して負けないが移動速度的に捕捉は出来ない △ 憎しみのカタマリ 同じような能力なので相打ちかな × ジュピター2 電離雲連発されると近づく前に倒されそう × コンボイが見た夢の中のメガトロン 流石にサイズ差負け ○ アンヘルワイスマン 範囲が狭い、長期戦吸収で有利 × リボー 中性子ミサイル負け △ 変異体 同じような能力なので相打ち △ インドラ 攻撃はほぼ無効に近いがバリアーを突破出来ないので吸収できない × ミーシャ 神戮まで逃げられて負け × ルナガンダム ビーム連発で負けかな ここまでいいでしょう ジュピター2>憎しみのカタマリ=アセンブラ>巨大イカ 228格無しさん2019/08/27(火) 06 30 31.26ID eeCWV8v/ 226 考察乙だけどその戦績だと勝ち越せているのはフカまでだから 位置は「>憎しみのカタマリ>巨大イカ=アセンブラ>フカ>」じゃないか? 227 コウがジガとしての行動を制御できるようになった後半ならともかく 第6話時点だとコウの意思に反して暴れ回ってしまう状態だから 「コウの反応=暴れているジガの反応」になるのかが分からん。 まあもし大丈夫な場合は反応を修正するけどさ
https://w.atwiki.jp/be-taprograming/pages/14.html
たぶん、アセンブラのソースコードを置いとくんじゃいないの? メニューへ
https://w.atwiki.jp/kaizouiwao/pages/26.html
*質問があればゲイムBBSで質問してください 常識のある人間による常識のある質問であれば答えます 資料 とりあえず見ておいたほうが良いと思われるもの http //www.geocities.jp/misty_earn/siryou.html いろいろなデータのアドレスが書いてある http //rm2haxx.dtiblog.com/blog-entry-3.html メモリの役割 http //borokobo.web.fc2.com/neo/prghabc/6.html 逆アセした後はここを参考に 前置き アセンブラいじれる人が見るとなんて陳腐な説明なんだろうかと思うくらい簡単に説明します というよりもはやXレジスタとかYレジスタとかいう言葉は出てきません。本格的にアセンブラを学びたい場合は ぷれさべー氏のhttp //borokobo.web.fc2.com/neo/prghabc/index.htmlとか見るといいでしょう メモリとは エミュレーターでExt→拡張ウィンドウ→メモリビューワーを選択してください(NNNesterJの場合) すると何だかわからないが大量の数字が現れます。これがメモリです。 私たちはこの数字が変わることでゲームを楽しんでいます これはファミコンでもプレステでもPCゲームでも同じことが言えます(たぶん) バイナリエディタでみるとたくさんの数字が出てきますがこれらを分類すると 命令文とその命令に対する数値に分かれます。 このページに書かれている解析資料はほぼすべてが命令に対する数値です もしアセンブラを完璧に扱えるようになったなら命令そのものを自由にいじることができるようになるでしょう まじめに命令の意味を知りたい場合は まず逆アセンブラのソフトを用意しましょう。6502でも65816でも構いません。 そして逆アセンブラした結果をぷれさべー氏のアセンブラについてのページで確認しましょう。 しかし覚えるべき命令がどれなのかわからないのでここではよく使う命令を専門用語を使わずに説明したいと思います。 ※重要 XXには必ず定数が入ります。 A9 85とすると「85という数字を用意する」という意味になります。 まずは EA「何もしない」 改造には欠かせない命令です。まんまです。たとえば音を出す命令をすべてEAにすれば音は出ません。 移動する命令をすべてEAにすれば行動しません。 60「処理終了」 まんまです。この命令がないとどこまでもプログラムとして読み込んでいくので最後には必ずつけましょう。 A9 XX「数字を用意する」 解析資料を使って敵の動きを改造してる人はいじる数値のひとつ前の数字を見てください。 大抵はA9になっていると思います。しかしこれだけでは意味を持ちません。 A5 XX「指定したメモリの数字を用意する」 A5 A8とするとメモリのA8番の数字を用意する。ということになります ちなみにA8はロックマンの残機なのでこの場合は「ロックマンの残機の数値を用意する」 といったことです 85 XX「用意した数字をメモリに入れる」 事前に用意した数を指定したメモリに入れます。たとえば A9 05 85 A8 とするとこれは「05という数値を用意してメモリのA8番に05を入れる」ということです。 つまり「ロックマンの残機を5にする」という意味です BD XX YY「指定したメモリの数字を用意する」(雑魚や武器をいじるとき AD XX YY「指定したメモリの数字を用意する」(ボスや岩男をいじるとき メモリが0600など2Byteの大きさのときは85を使わずにこっちを使います。 ※重要 この場合はBD 00 06とするので注意しましょう。BD 06 00ではないのであしからず 9D XX YY「用意した数字をメモリに入れる」(雑魚や武器を弄るとき 8D XX YY「用意した数字をメモリに入れる」(ボスや岩男を弄るとき 上と同じような意味ですがメモリが0600番の場合など2Byte以上の場合使います とりあえず基本はこんなところです。 実際に使うにはまだまだ覚えるべきことは足りないですが C9 XX「用意した数字とXXを比べる」 A5 XX C9 XX D0 XXという風に使います。用意した数字からXXを引き算(演算)した時の結果で その後が変わります D0 XX「演算結果が0でない場合XXByte処理を飛ばす」 F0 XX「演算結果が0の場合XXByte処理を飛ばす」 90 XX「演算結果がプラスの場合XXByte処理を飛ばす」 B0 XX「演算結果がマイナスの場合XXByte処理を飛ばす」 E6 XX「メモリのXX番の数値を1増やす」 C6 XX「メモリのXX番の数値を1減らす」 EE XX YY「メモリのYYXX番の数値を1増やす」(ボスや岩男を弄るとき CE XX YY「メモリのYYXX番の数値を1減らす」(ボスや岩男を弄るとき FE XX YY「メモリのYYXX番の数値を1増やす」(雑魚や武器を弄るとき DE XX YY「メモリのYYXX番の数値を1減らす」(雑魚や武器を弄るとき 69 XX「用意した数字にXXプラスする」 E9 XX「用意した数字にXXマイナスする」 重要 サブルーチンについて 20 XX YY $30000+YYZZを足した位置の命令を読み込みます 要するに何回も使う命令をこれで呼び出したりします 抽象的に説明しますと 「ロックマン2はロックマン3よりと比べるとロックマン2のほうがおもしろいよね」 というのより 「RM2はRM3と比べるとRM2のほうがおもしろいよね」と言ったほうが文字数が少ない、つまり容量を少なく済ませられますよね また ロックマン2は3F2C0あたりから自由に使える容量があるのでそこに自分で命令を書き足し 20 C0 F2と呼び出せば本来の処理を潰さずに命令を追加したりできます 例題 BD E0 04 D0 10 A9 00 85 09 A9 42 85 08 20 75 F1 A9 10 9D E0 04 DE E0 04 20 98 EE 60 実際にこれはロックマン2の中に使われている命令です これがわかれば基本は大丈夫だと思っても構いません サブルーチンが2つも出てきますがmisty氏の資料に書いてあるので問題ないでしょう まず何のメモリが出てくるか見てみましょう 08 09 04E0 の3つが出てきてますね 08,09は資料によると3F175から岩男を追いかける処理の速度として使われているようです そして04E0は汎用変数、つまり現段階では何なのかはわかりません とりあえずどういう処理をするか日本語訳してみましょう ファミコンの処理1フレーム目 04E0の数字を読み込む→00かどうか判断する(当然何もしてないから00) →メモリの08に42,09に0を入れる→岩男を追いかける処理 →04E0に10という数値を入れる→04E0から1減らす→終わり ファミコンの処理2フレーム目 04E0の数字を読み込む →00かどうか判断する(さっき10入れて1減らしたから0F,つまり$10byteジャンプする) →04E0から1減らす→終わり どういうことかお分かりいただけたでしょうか 最初の1フレーム岩男を追いかける処理をしますがその後は追いかける処理をしません しかし04E0が00になったとき、つまり$10フレーム後にはまた岩男を追いかける処理をします 今回の場合04E0は時間経過に使っているわけです 結論から言いますとこの処理はテリーの行動をあらわしたものです サブルーチンを使えばこのように$20byte足らずで敵の動きを作ることができます
https://w.atwiki.jp/naobe/pages/104.html
言語に戻る x86アセンブラについて記述する。 スタック領域の構成 http //hack.ninja-web.net/academy003-060.htm 参照 ほとんどの関数の先頭には以下のコードが存在する push ebp mov ebp, esp sub esp, 020h
https://w.atwiki.jp/yoshinabu/pages/55.html
アセンブラについて知ったことを書きます オプション -Qy,-Qn sunにありました。 -Q y | n -Qy オプションを指定すると、出力ファイルの .comment セクションに ident 文字列が追加され、 ファイルの作成に使用されたリンクエディタのバージョンが識別されます。 ld -r を使用した場合のように、複数のリンク手順がある場合は、複数の ld ident が追加されます。 これは、cc コマンドのデフォルトのアクションと同じ結果になります。 -Qn オプションを指定した場合には、バージョンの識別は行われません。 ページはこちら
https://w.atwiki.jp/bogard/pages/18.html
最近になってなぜかアセンブラの本が、書店に多くなってきたような気がする。いやアセンブラを学ぼう、っていうのは良いことだとは思うんですけどね、ええ。 でもね、本屋に並んでるアセンブラの本って、本当にアセンブラの勉強の役に立つの??って言うのが正直な感想なんです。 どんな本が並んでいるかというと、まず①アセンブラといいつつPCゲームを改造する本。②80X86およびPentium系CPUのアセンブラの本。③情報処理試験向けCASLの本。④電子工作向けPICやH8アセンブラの本。 番号が若い順に多い。 ①は、論外。 ②は、まあとにかくほとんどのご家庭のPCがWindowsマシンなわけで、プラットフォームは、ある。でもWindowsプログラムをアセンブラで書くっていうのは、少なくともアセンブラ初心者にはオススメできないと思うんですが。 ③は、まあ学習用としてはいいのかな??シミュレータ等もVector行ったら充実してるし。でも基本的な機能過ぎて、まるで標準関数使ってC言語のプログラムをさせられているような。「教科書的」すぎる、と言ったら判ってもらえるだろうか? ④はアセンブラに関しては一番かも。でもその前提に「電子工作」があるのは、高校でラジオ作っていらい半田ごて握ったことないよ、なんて向きには敷居が激しく高すぎる。 そんなこんなで個人的に一番オススメなアセンブラの入門書?は『Linuxから目覚めるぼくらのゲームボーイ』。以下、理由。 ①80X86系より命令系統が判りやすい ②入出力が限られていて、機器の構成もコンパクトで理解しやすい。 ③環境が整っているのですぐに始めやすい。 特に③の理由。この本ではゲームボーイと言いつつゲームボーイアドバンスでの開発を行うわけですが(笑)、持ってなくてもVisualBoyAdvanceという優秀なエミュレータがあるおかげですぐに動かせる。 VisualBoyAdvanceは優秀なエミュレータで、リアルタイムのメモリダンプ機能やレジスタの値の表示などが行える。これってすごく使える!いやマジで。VisualBoyAdvanceを単にPCに吸い出したGBAのゲームやるだけに使っているのは本当にもったいないです。 しかも、コンパイラ・アセンブラもDevkitAdvanceやGNUのクロス環境(ARM7用)が使えるので、全てタダで始めることができる。 何より、GBAの実機を持っていたら本に付属のUSBケーブルで、実際にGBA上で自作プログラムが動く! こんなに贅沢な学習環境って無いですよ。ホントに。 ひとつ難点を言えば、ARMというマイコンの命令ってちょっとだけ癖があることだけど、もともとアセンブラってそんなもんだし(笑) ARM系のチップは携帯電話などにも使われているのでその性能は折り紙つきです。その意味では組み込みを目指す人なんかも入門にはいいかも。 この本が無かったら、アセンブラの学習環境はZ80とそのエミュレータだ、って言いたかったところだけど(笑)『Z80マシン語秘伝の書』なんかも読むといいですよ。アセンブラと言う環境でいかに目的のルーチンを作るか、というヒントになると思います。
https://w.atwiki.jp/chipmunk1984/pages/12.html
無限アセンブラ 書名: 無限アセンブラ 著者: ケヴィン・J・アンダースン&ダグ・ビースン(内田 昌之 訳) イメージをクリックするとamazonに進みます 紹介 月の裏側で発見された謎の建造物の調査に赴いた一行が、現地でことごとく無惨な死を遂げた!それは異星から来た無数の微少なロボット--ナノマシンの仕業だった。あらゆる物質を原子レベルで解体してしまうこの機会が、もし地球に進入したら?ただちに最高の頭脳を持つ科学者が月に招集され、厳重に隔離された研究所で必死の調査を開始するが……人類が直面した新たな脅威を迫真の筆致で描く、戦慄のSFサスペンス 評価 評点:★★★☆☆ ( 5/10点) 人類を危機に陥れる微少な存在,南極基地,厳重に隔離された研究施設とくれば,名作『復活の日』や『アンドロメダ病原体』が思い浮かぶ.この名作達に『ナノマシン』という設定で挑んだ意欲作.ナノマシンの描写やコストの観点からファーストコンタクトのためにコストの観点からナノマシンを送り込むという発想は新しさを感じさせる.ただテンポ良く進む前半に比べ,後半は今ひとつ.南極基地の顛末や前半の伏線が説明不足のまま終わる結末はいただけない.お暇なら... おまけ