全く判らないので教えてください!。
命令語として
「LDD」「STD」「BPS」「BNG」が使われているんですが
どの種類のアセンブラなのか判りません。(T_T)
知っている方おしえてください。<(_ _)>

このQ&Aに関連する最新のQ&A

A 回答 (2件)

MC6809ではないでしょうか?


少なくともZ80や8086等80系ではないとおもいます。
    • good
    • 0
この回答へのお礼

分解して基板を見てみたら
しっかり「MC68B09CP」と石に書いてありました。(^^;)
後はアセンブラリストをなんとか探します。
ありがとうございました。<(_ _)>

お礼日時:2002/03/06 14:50

Z80のザイログ形式のニーモニックで無いのは確かです。



LDD,STDはおそらく Load Data,Store Dataか
Load Double, Store Doubleの意味でしょうから、
LoadとStoreを区別しない系列の物でしょうね。

BPSやBNGはブランチかな。
Plus Signeとか Not Grateか?

問題なければ,一部だけでもソースを載せてもらったほうが判別しやすいです。
レジスタの名称とか表記も材料になりますし。

まあ、わかる人ならこれでわかるのかも知れませんが。
    • good
    • 0
この回答へのお礼

分解して基板を見てみたら
しっかり「MC68B09CP」と石に書いてありました。(^^;)
後はアセンブラリストをなんとか探します。
ありがとうございました。<(_ _)>

お礼日時:2002/03/06 14:50

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q草食系男子と肉食系男子の違いとは?

草食系男子と肉食系男子の違いとは?

草食系男子とはどんな男性?
肉食系男子とはどんな男性?

教えてください。
お願いします。

Aベストアンサー

 こんにちは。

 草食系男子は大人しく、セックスにも興味があまりない男をいいます。肉食系はその逆で、積極的でセックスにも精力的だという意味です。

 いずれも、マスコミの造語です。

 草食系男子について詳しく書いてあるサイトのリンクを張っておきます。
 参考までにどうぞ↓

参考URL:http://ja.wikipedia.org/wiki/%E8%8D%89%E9%A3%9F%E7%B3%BB%E7%94%B7%E5%AD%90

Q[GNUインラインアセンブラ] SIMD命令

下記のようなGNUインラインアセンブラを含むプログラムをMac Book Airにてgccでコンパイルして実行するとPSUBSW命令は、mm0 - mm1の結果がmm0に入りますが、IntelのDevelopper's manualのPSUBSW命令の説明においては、mm1-mm0の結果がmm1に入るとなっています。

これは、なぜなのでしょうか。

---- Begin source code -----
1 #include <stdio.h>

2

3 int

4 main()

5 {

6 short int a[4] = {1111,1112,1113,1114};

7 short int b[4] = {1111,2112,3113,4114};

8 short int c[4];

9

10 asm volatile (

11 "movq (%1),%%mm0\n\t"

12 "movq (%2),%%mm1\n\t"

13 "psubsw %%mm1,%%mm0\n\t"

14 "movq %%mm0,%0\n\t"

15 "emms"

16 : "=g"(c): "r"(&a),"r"(&b));

17

18 printf("%d %d %d %d\n", c[0], c[1], c[2], c[3]);

19

20 return 0;

21 }
---- End source code -----

Intel developper's manual (http://www.intel.co.jp/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf)

PSUBSW mm, mm/m64
Subtract signed packed words in mm/m64 from signed packed words in mm and saturate results.

下記のようなGNUインラインアセンブラを含むプログラムをMac Book Airにてgccでコンパイルして実行するとPSUBSW命令は、mm0 - mm1の結果がmm0に入りますが、IntelのDevelopper's manualのPSUBSW命令の説明においては、mm1-mm0の結果がmm1に入るとなっています。

これは、なぜなのでしょうか。

---- Begin source code -----
1 #include <stdio.h>

2

3 int

4 main()

5 {

6 short int a[4] = {1111,1112,1113,1114};

7 short int b[4] = {1111,2112,3113,4114};

8 short int c[4];

...続きを読む

Aベストアンサー

詳しくないのですが、アセンブラの書式にはAT&T式とIntel式があり、オペランドのソースとデスティネーションが逆のようです。

Q草食系男子、肉食系男子

草食系男子、肉食系男子

中3、男子です。

学校で、おれは肉食系男子だとか、男はこぶしだとか、
ずっといってる男子がいます。

さらに、オタク系とは、かかわりたくないとか、いっています!

そんなこといってるくせに、相手にしてるのは、草食系とか、オタク系です。
これは、なんででしょうか?

わかりにくくてすいません。
解答おねがいします!

Aベストアンサー

「肉食系の方が何だか良くわからないけど、格好良さげ」と思っているからでしょう。
「草食、オタク系の方が何だか良くわからないけど、キモいし、もてなさそうだから、避けよう」とも思っていると思います。

基本的に肉食系男子、草食系男子などという言葉は、ここ2,3年の話なので昔はありませんでした。そのうちにすたれると思います。

そうなったらその彼は、「何だかよくわからないけど、他人の上に立てそうな流行っている言葉」を採用して、同じようにはしゃぐであろうと思います。

ポイントは、彼自身自分が使っている言葉を良くわかっていない、ということと、自分がやっている行動と使っている言葉のかい離に無頓着であるということです(そういう性格なんでしょう、多分)。

Q8086アセンブラで、メモリ間のデータをストリング命令でブロック転送したい

ソースが長めなので、簡潔に書きます。ご無礼の段、ご容赦ください。
【目的】PC-9801本体のCバス(汎用拡張スロット)に挿したサウンドボード上の
ROM BIOSを読み出し、バイナリファイルに落としたい。既にエミュレータ用に実機からの
吸出しツールは存在するが、ソースが無いので、自作することにした。
その前段階としてアセンブラの修行も兼ねて、ROM BIOSの先頭3ワード(6バイト)を
メモリ上のバッファにコピーし、比較して値の合致を確認したい。
将来的にはSCSI ROM BIOSの解析等を試みたい。

【方針】8086のストリング命令でダイレクトにメモリtoメモリでブロック転送を
する。具体的にはrep movsbを用い、6バイトを転送する。

【備考】PC-9801-26K互換音源のROM BIOS(少なくとも先頭8バイト)は一意であり、
その並びは、0001h, 0000h, 00d2h である。例外はありません。
86音源でも同様で、下位互換性があることは、拙作ツール(OPNCHK.COM)にて確認済み。
なお、上記バイト列は、セグメントCC000h:オフセット2E00hから読み出し
可能である。
なお実行にあたり、所謂メモリマネージャの類(MELEMM.386等)は一切
組み込まない状態で行なう(EMSメモリマネージャ等との同居対応は将来の課題とします)。

【開発環境】PC-9801DA2(Cyrix Cx486DLC-25MHzに載せ換え; 13.6MB RAM; HA-55BS4 SCSIボード
+ 240MB SCSI HDD + SONY CPD-17SF9 CRT
+ NASM 2.06rc10 on NEC DOS 5.0A-H + Turbo Debugger v3.2 と、
秋葉で買ったジャンクFDに入ってたMASM ver 3.00;
予備機 VX41/RS21/EPSON 286VF/EPSON 486HX2/Xv13R16[K6-2 400MHz]/
AT互換機上のNekoIIエミュ/Cygwin上のnasmw.exe)

【参考書】PC-98、8086アセンブラ、テクニカルデータ、古雑誌等 定番本100冊ほど

【拙作コードの失敗点をご指南いただきたい。NASMコードですが、MASM/TASMでも構いません】
; PC-9801-26K compatible Sound ROM BIOS Copy Program (i/o address 0188h)
; Programmed by OrzHacker666
; Date 2009-07-13 for NASM 2.06rc10

[Bits 16]
org 100h ; COM program
section .text
start:
push es ; これを保存しないと、
push ds ; 画面がめちゃくちゃになる

mov ax, 0cc00h ; Sound ROM セグメントアドレス
mov es, ax
mov ds, ax ; DS:SI -> ES:DI 無意味か?
mov bx, 2e00h ; Sound ROM オフセットアドレス

lea si, [es:bx] ; ES:BX がSound ROMの開始点
lea di, [ds:sbuff] ; sbuffは仮に確保したバッファ。
; どこにあるかは、当たり前ですが、不明。そこら辺はCの変数宣言と同じですが。

mov cx, 8 ; とりあえず、アタマ8バイトをコピー
cld
rep movsb

CompareWithOriginal:
cmp word [es:bx+4], 00d2h ; これは通る。当たり前。
jne FailedCpyRom
cmp word [ds:sbuff+4], 00d2h ; ここで失敗判定。なぜ?
jne FailedCpyRom
; sbuffにes:bx~が正しく
; 転送されていないのか?
SuccessCpyRom: ; これを拝めれば…。
pop ds
pop es
mov ah, 9
lea dx, [SUCCESSMsg]
int 21h
mov ax, 4c00h
int 21h

FailedCpyRom: ; 見飽きましたOrz
pop ds
pop es
mov ah, 9
lea dx, [FAILEDMsg]
int 21h
mov ax, 4c00h
int 21h

section .data
SUCCESSMsg:
db 'Succeeded !!', 0dh, 0ah, '$'
FAILEDMsg:
db 'Failed(--;)', 0dh, 0ah, '$'

section .bss
sbuff:
resb 8 ; Cで書くと、差し詰め unsigned char sbuff[8]; であろうか…。

識者の方、よろしくお願いいたします。気になって夜も眠れません。

ソースが長めなので、簡潔に書きます。ご無礼の段、ご容赦ください。
【目的】PC-9801本体のCバス(汎用拡張スロット)に挿したサウンドボード上の
ROM BIOSを読み出し、バイナリファイルに落としたい。既にエミュレータ用に実機からの
吸出しツールは存在するが、ソースが無いので、自作することにした。
その前段階としてアセンブラの修行も兼ねて、ROM BIOSの先頭3ワード(6バイト)を
メモリ上のバッファにコピーし、比較して値の合致を確認したい。
将来的にはSCSI ROM BIOSの解析等を試みたい。

【方針...続きを読む

Aベストアンサー

>回答中の、"cmp word es:[di-4], 00D2h"は
MOVSD×2でDIはsbuff+8を指しています。DI-4はsbuff+4のことです。
これくらいはアセンブラをやる以上、直ぐに分かってください。

>sbuff自体については、セグメント値は不定で、調べる意義は無い
ちょっと乱暴な話ですね。sbuffはbss(初期値なし静的領域)のよう
なので、実行時のDSです。

確実なのはtextセグメント(コードと同じ)に次のようにデータを
定義して使います。
LES  DI,CS:adr 'ES:DIにsbuffのセグメント:オフセットが入る
== 中略 ==
adr  DD sbuff 'sbuffのセグメント:オフセットが記録される

>DS=ESではダメです
だって、そうなっていますよ。AXをDSにもESにもMOVしてます。
前にも書いたんですが、セグメントの使い方が分かっていない?

前のサンプルは上記仮定(sbuffは実行時DSにある)で作っています。
PUSH DS、POP ES ES←DSにしています。(受け取り側が実行時DS)
この後で、DSに0CC00hを代入しています。

>[es:]のオーバーライドは必須です
CMP   WORD ES:[DI-4],00D2h
ちゃんと、ESでオーバライドしてるはずですけどね。

>ジレンマに陥ります
どこがでしょう?アセンブラで、セグメントレジスタを使う以上は
自分の自由に使えば良い訳で、適当に値を設定したり、戻したりすれば
済む話なのでは?
例:
REP  MOVSB
PUSH  DS
PUSH  ES
POP   DS
POP   ES
後の4命令で、DSは実行時DSに戻り、ESはROMセグメントを指します。
サンプルではこれをやっていないので、実行時DSはESにある状態です。
故にセグメントオーバーライドしています。

>回答中の、"cmp word es:[di-4], 00D2h"は
MOVSD×2でDIはsbuff+8を指しています。DI-4はsbuff+4のことです。
これくらいはアセンブラをやる以上、直ぐに分かってください。

>sbuff自体については、セグメント値は不定で、調べる意義は無い
ちょっと乱暴な話ですね。sbuffはbss(初期値なし静的領域)のよう
なので、実行時のDSです。

確実なのはtextセグメント(コードと同じ)に次のようにデータを
定義して使います。
LES  DI,CS:adr 'ES:DIにsbuffのセグメント:オフセットが入る
== 中略 ==
...続きを読む

Q草食系男子よりも肉食系女子の方が行動的で元気?

草食系男子よりも肉食系女子の方が行動的で元気?

・草食系男子(女子でも)よりも肉食系女子(男子でも)の方が行動的

・草食系男子は積極的に外に出て行動しなくて家にいる傾向が強い

と言われてますがそうなのですか?

草食系男子(女子でも)というのは、?女子を積極的に追いかけない男子?というのを聞きました。

ですから、草食系男子とされる人の方が、女子を積極的に追いかけない分
それ以外のいろんなこと(旅行、映画、グルメ、ショッピングなど外に出て遊ぶなど)に外へ出て行き積極的で行動的という

イメージがあったのですが?ちがうのですか?

逆に肉食系女子(男子)というのは、男子を追いかけることは積極的だが、それ以外には積極的でない

というイメージがあったのですが。

Aベストアンサー

こんばんは。

全部をひとくくりには出来ないと思います。

草食系~は異性へのアプローチが積極的でないという共通点があるだけで、それ以外は色々でしょ~(笑)

ひきこもりでもアキバ・オタク系も、ある意味で草食系だし(一見、別物みたいに思えますが)

乙男(おとめん)なんかも
草食系ですよね。

逆に肉食系も、それだけにガツガツしてる人も居れば、様々な分野に意欲的な人もいるでしょう。

QCASL アセンブラ命令 アプリ機能

例えば、CASLのアセンブラ命令にDCがある。
LABER DC 100 とすると。
これは、メモリに領域を確保し100をいれる命令だが、プログラムが変更されれば、メモリアドレスは変更される。

CASLには機械語命令・マクロ命令・アセンブラ命令がある。

機械語命令は人に分かりやすいようにニーモニックが付けられているだけだが、
アセンブラ命令はプログラムが変更されればそのアドレスは移動するという、ハンドアセンブリでは、できない機能が含まれている。

アセンブリ言語は色々ありますが、アセンブラ言語は人に見やすいようにニーモニックが付けられているだけでなく、CASLのDC命令のように、ハンドアセンブリではできないアドレスの自動変更のようなアプリケーションとしての機能(OS的機能)も一般にふくまれているとかんがえてよいのでしょうか?

よろしく願います。

Aベストアンサー

No1です。

>プログラムの変更==>DCでアドレスの自動変更

DC命令に限らず、命令につけられたアドレスが何番地であるかを計算(カウントアップ)するのは、アセンブラの基本機能です。これがないと、生成した機械語命令を何番地に格納したらいいのかわからない。

>という、アセンブラ言語が単にニーモニックの記述だけでない、アプリとしての機能(OS的機能)が含まれているかという質問です。

アセンブラはアプリなので、ニーモニックを解釈したり、上記のアドレスの計算をしたりするのは、アセンブラというアプリの機能です。OSは関係ありません。OSの上でアセンブラというアプリが動いているだけ。

>LABER DC 100 とすると。
>これは、メモリに領域を確保し100をいれる命令だが、プログラムが変更されれば、メモリアドレスは変更される。

もしかして勘違いがあるかもしれませんが、
LABER DC 100
というのは、
「LABERという名前のラベルを現在の命令格納アドレスポインタの値で定義して、そのアドレスの1ワードに100を入れて、命令格納アドレスポインタを+1する」
で、
LABEL NOP
という機械語命令は、
「LABELという名前のラベルを現在の命令格納アドレスポインタの値で定義して、そのアドレスの2ワードにNOPの命令コードを入れて、命令格納アドレスポインタを+2する」

と、いうことで、DC命令と機械語命令はアセンブラの動作(ソースファイルをアセンブルして命令コードファイルを作る際の動作)としては格納するデータがちょっと違うだけです。DS命令も、データの長さが1とか2でなく可変であることと、データに何が入るか分からないというくらいの違いだけです。

No1です。

>プログラムの変更==>DCでアドレスの自動変更

DC命令に限らず、命令につけられたアドレスが何番地であるかを計算(カウントアップ)するのは、アセンブラの基本機能です。これがないと、生成した機械語命令を何番地に格納したらいいのかわからない。

>という、アセンブラ言語が単にニーモニックの記述だけでない、アプリとしての機能(OS的機能)が含まれているかという質問です。

アセンブラはアプリなので、ニーモニックを解釈したり、上記のアドレスの計算をしたりするのは、アセンブラとい...続きを読む

Q草食系男子を批判している人はちゃんと理解して批判しているのでしょうか?

草食系男子を批判している人はちゃんと理解して批判しているのでしょうか?

「草食系男子は積極性にかける」「草食系男子は頼りない」とか言う意見をよく耳にしますが
ちゃんと草食系男子の定義とされるものを理解しているのでしょうか?

http://business.nikkeibp.co.jp/article/skillup/20061005/111136/
草食系男子の名付け親である深澤真紀氏曰く
?恋愛やセックスに「縁がない」わけではないのに「積極的」ではない男子?です

なんかイメージだけで、「草食系男子は積極性にかける」「草食系男子は頼りない」とかいっている気がしませんか?

深澤真紀氏も否定的な捉え方が多くびっくりしているらしいです。

http://business.nikkeibp.co.jp/article/topics/20090224/187180/

恋愛やセックスに「積極的」ではない=積極性にかけるというのは偏見だと思います。

草食系男子は恋愛には積極的でないだけで、それ以外のことには積極的な人も多いと思います。

Aベストアンサー

はじめまして。

私と同じ事考えてる人がいるのだなぁと思いました。
『草食系男子』の言葉の使い方、間違っているマスコミや情報が多いですよね。

深澤さんが語源だっていうのは知らなかったんですが、
私は勝手に『草食系男子』というのは、とてもとても優しい男性のことだと思っていました。
何をしてもあまり怒らない、性的に下品ではない、騒がしくない、
色々なことにやたらガッついていない、ギスギスもしていない。とても穏やかな印象。
ただ、体型については細めのイメージがあるかな……?

周りの人などで、よく居ませんか?見るからに優しそうな男の人。
そういう人のことだと思っていました。

恋愛もセックスも、積極的なのってそんなに必要なのかなと思います。
そういうものは人それぞれだと思うので。
しなければいけない、って義務なわけでもありませんから。
(ただ、自分の両親や家のことを考えて結婚や子供をもうけることは、
 家を大切にするという意味で、必要な意識だとは思いますが)

Qアセンブラの擬似命令について

kigin と申します。
アセンブラの擬似命令に「align」というものがありますがこれは一体どういう意味なのでしょうか?
また、アセンブラの擬似命令やアセンブラプログラミングに関して詳しいガイダンス的な紹介がなされているホームページ等がありましたら、教えていただきたいのですが。
よろしくお願いいたします。

Aベストアンサー

CPUによっては2バイト分を読み書きしたりする(ワードアクセス)のときは
アドレスは偶数アドレスでなければならないとかあるCPUがあってそのときに
align 2としてもしそのデータがそのまま奇数アドレスにおくこと
になりそうなときにちゃんとダミーデータをおいて偶数アドレスから
はじめてくれるものです。

良く使うのはIntel系CPUは2バイト境界がいいとか4バイト境界が早いとかで
やります

Qあなたの思う『草食系男子』と『勘違い草食系男子』を教えて下さい!

あなたの思う『草食系男子』と『勘違い草食系男子』を教えて下さい!

ちなみに私の思う
『草食系男子』は
・料理が出来る
・下北、吉祥寺が好き
・公園で読書&散歩
・洋服が好き(オシャレ) など

『勘違い草食系男子』は
・今まで誰とも付き合った事がない
・ゲーム&パソコンが趣味で毎日やっている(オタク)・気が弱くおどおどしている
・食が細く、かなり痩せている
など

『草食系男子』ってよく聞くけど(もうすでに死語かも)どんな男性のことを指してるのか、ラインがイマイチ分かりません…。

Aベストアンサー

私が思う
『草食系男子』は

良く言えば大人しい、悪く言えば覇気がない。


『勘違い草食系男子』は

肉を食べない。

(゜O゜)\(--;オイオイ、ソレハソウショクケイジャナクテベジタリアンダヨ!

【実話】

Qアセンブリ言語の質問です。8086アセンブラで「筆算的加減算」のプログ

アセンブリ言語の質問です。8086アセンブラで「筆算的加減算」のプログラムを組むことになりました。
2個の整数(3桁)を入力し、入力エラーも処理する様にしなければなりません。また、


  123     234         1        100
+456    -123     +999       -200
ーーーー   ----    ----     ----
 579      111      1000       -100


のように表示する事が条件になっています。

プログラムを組む上で、何かアドバイスやヒント等、教えていただけないでしょうか・・?

Aベストアンサー

全部面倒見ないとイケナイかな。
字数の関係があるから、答えを全ては書けません。
よって、今回は考え方のみ記述しますね。
(1)初期処理
 ・セグメントレジスタの設定(既にやっている)
 ・初期メッセージの表示
(2)中核処理
 これは^Cを入力すれば止まるのだから、
 無限ループで良いでしょう。以下のことをします。
 (a)数値1の入力を促すメッセージを表示する
 (b)数値1を入力する
 (c)入力値をチェックする
  エラー時はメッセージを表示して(a)に戻る
 (d)演算子(+か-)を入力する
  上記以外はメッセージを表示して(a)に戻る 
 (e)数値2の入力を促すメッセージを表示する
 (f)数値2を入力する
 (g)入力値をチェックする
  エラー時はメッセージを表示して(d)に戻る
 (h)数値1と数値2を(d)に基づいて加減算する
 (i)結果を編集し、表示を行う

観念的なコード
 CALL 初期処理
MUGEN: ;ここから(2)
 CALL 数値1入力
 JC MUGEN ;エラー時は戻る
 CALL 演算子入力
 JC MUGEN ;エラー時は戻る
 CALL 数値2入力
 JC MUGEN ;エラー時は戻る
 CALL 演算
 CALL 結果編集
 CALL 表示処理
 JMP MUGEN ;戻る

疑問点の指摘
(1)復帰改行
0Ah,0Dh とあるが、普通は0Dh,0Ah 文字通り、
復帰(0Dh)、改行(0Ah)の順に書く。後退法の
心配をしたと思うが、DW擬似命令の場合話で、
DB擬似命令では書いた順にメモリに格納される。

(2)セグメントレジスタの設定
mov ax,Data → mov ax,SEG IN_BUF
20年くらい前にやってたことなんで自信ないが、
こう書くような気がする。それと、COM(TINY)
形式の場合はDSの設定は不要です。
おまじないで入れときましょうか。

(3)OUT_DATA_0など
バッファド入出力(機能コード:10)を使えば、
入力値の再表示は不要なので、OUT_DATA_0 等は
不要です。ちょっと工夫が要るけどね。

(4)結果表示領域
結果が何ケタになるのか分からないのに、領域が
1バイト分しかない。

※ラベルと擬似命令、命令とオペランドの間に空白が
ありません。

全部面倒見ないとイケナイかな。
字数の関係があるから、答えを全ては書けません。
よって、今回は考え方のみ記述しますね。
(1)初期処理
 ・セグメントレジスタの設定(既にやっている)
 ・初期メッセージの表示
(2)中核処理
 これは^Cを入力すれば止まるのだから、
 無限ループで良いでしょう。以下のことをします。
 (a)数値1の入力を促すメッセージを表示する
 (b)数値1を入力する
 (c)入力値をチェックする
  エラー時はメッセージを表示して(a)に戻る
 (d)演算子(+か-)を入力する
  上記以外...続きを読む


人気Q&Aランキング

おすすめ情報