Message Log 15 Return to Parent Menu 
Last Updated by 07/01/05(Fri)  

 
Tips
 

 やっぱりアセンブラってことですか!


 
Message log list
 

 アセンブラ掲示板に書き込まれた過去のログです。


Message log 44 (05/01/0506/30/05)
Message log 43 (01/01/0504/30/05)
Message log 42 (01/01/0412/31/04)
Message log 41 (11/01/0312/31/03)
Message log 40 (10/01/0310/31/03)
Message log 39 (04/01/0309/30/03)
Message log 38 (12/01/0203/31/03)
Message log 37 (08/01/0211/30/02)
Message log 36 (05/01/0207/31/02)
Message log 35 (03/01/0204/30/02)
Message log 34 (01/01/0202/28/02)
Message log 33 (09/15/0112/31/01)
Message log 32 (08/01/0109/14/01)
Message log 31 (05/26/0107/31/01)
Message log 30 (05/15/0105/25/01)
Message log 29 (05/01/0105/14/01)
Message log 28 (02/01/0104/30/01)
Message log 27 (01/01/0101/31/01)
Message log 26 (10/01/0012/31/00)
Message log 25 (07/21/0009/30/00)
Message log 24 (06/16/0007/20/00)
Message log 23 (05/20/0006/15/00)
Message log 22 (05/01/0005/19/00)
Message log 21 (04/01/0004/30/00)
Message log 20 (02/01/0003/31/00)
Message log 19 (01/01/0001/31/00)
Message log 18 (11/01/9912/31/99)
Message log 17 (09/05/9910/31/99)
Message log 16 (08/21/9909/04/99)
Message log 15 (07/01/9908/20/99)
Message log 14 (04/01/9906/30/99)
Message log 13 (02/01/9903/31/99)
Message log 12 (11/01/9801/31/99)
Message log 11 (09/21/9810/31/98)
Message log 10 (08/01/9809/20/98)
Message log 09 (07/01/9807/31/98)
Message log 08 (05/04/9806/30/98)
Message log 07 (04/08/9805/03/98)
Message log 06 (02/23/9804/07/98)
Message log 05 (01/01/9802/22/98)
Message log 04 (11/09/9712/31/97)
Message log 03 (10/17/9711/08/97)
Message log 02 (08/22/9710/16/97)
Message log 01 (06/20/9708/21/97)


 
Message log 07/01/9908/20/99
 




澤口@大崎  [1999/08/19 Thu 15:46:54]  [210.141.243.66]

澤口@大崎です。

ちょっと修正。
cmp ebx,0x3E80 というのはわたしが勝手に設定した値で、
cmp ebx,(40*VGA_HEIGHT)
ですね。
澤口@大崎  [1999/08/19 Thu 15:33:15]  [210.141.243.66]

澤口@大崎です。

to MINTさん:

どこらが今一つなのかもう少し詳しく書いていただけないでしょうか。
まさか mov とか out がわからないということではないでしょう?
とりあえず、 386 拡張命令をニーモニックに直し、コメントを入れて
みました。
どこかのデータ配列から VRAM にデータを送っているらしい。

mov dx,0x03C4
mov ax,0x0F02 ; al = 2, map mask register
out dx,ax ; port 3C4h, EGA sequencr index
mov dx,3CEh
mov ax,0x0205 ; al = 5, mode
out dx,ax ; port 3CEh, EGA graphic index
mov al,8 ; al = 8, data bit mask
out dx,al ; port 3CEh, EGA graphic index
inc dx ; port 3CFh, EGA graphic func

mov ebx,0 ; data byte counter initialize

les si,dword ptr wbitmap ; source data (offset)pointer
jmp short wbitmap_2
wbitmap_loop:;
pop ax ; source data segment
add si,1 ; next data byte
jnc short wbitmap_1 ; Jump if carry=0
add ax,0x1000 ; next segment(data)
wbitmap_1:;
mov es,ax ; source data segment
wbitmap_2:;
mov ch,es:[si] ; ch...graphic data(source)
push es

mov edi,ebx ; vram offset counter
mov cl,3
shr edi,cl ; 3bit Shift w/zeros fill

mov al,0x80 ; set MSB
mov cl,bl
and cl,7 ; 00000111b(lower 3 bit)
shr al,cl ; Shift w/zeros fill
out dx,al ; port 3CFh, EGA graphic func

mov ax,0x0A000 ; vram segment
mov es,ax ; set destination segment
mov al,es:[di] ; move vram data to reg.(nonsence!)
mov es:[di],ch ; write graphic data(from memory)
inc ebx ; data count
cmp ebx,0x3E80 ; ?16k
jne wbitmap_loop ; Jump if not equal

pop ax ; dummy(see "push es")
dec dx ; port 3CEh, EGA graphic index
mov ax,0x0005 ; al = 5, mode
out dx,ax ; port 3CEh, EGA graphic index
mov ax,0x0FF08 ; al = 8, data bit mask
out dx,ax ; port 3CEh, EGA graphic index

MINT  [1999/08/19 Thu 09:31:34]  [210.154.7.18]

はじめまして、MINTと申します。
アセンブラを勉強するため、参考になるホームページがないかといろいろ検索していましたが、非常に少ないですね。
ここは大変貴重な掲示板です。

さて本題なのですが、アセンブラをまず読めるようにならなければということで、現在プログラムを読んでいるのですが、今一つ理解できていません。
以下のプログラムなのですが、どなたかご教授をお願いできないでしょうか?

void wbitmap_output(void)
{
asm mov dx,0x03c4
asm mov ax,0x0f02
asm out dx,ax
asm mov dx,0x03ce
asm mov ax,0x0205
asm out dx,ax
asm mov al,0x08
asm out dx,al
asm inc dx

__emit__(0x66);
__emit__(0xbb);
asm dd 0 /* immed32 = 0 */

asm les si,dword ptr wbitmap
asm jmp short wbitmap_2
wbitmap_loop:;
asm pop ax
asm add si,1
asm jnc wbitmap_1
asm add ax,0x1000
wbitmap_1:;
asm mov es,ax
wbitmap_2:;
asm mov ch,byte ptr es:[si]
asm push es

__emit__(0x66);
asm mov di,bx
asm mov cl,3
__emit__(0x66);
asm shr di,cl

asm mov al,0x80
asm mov cl,bl
asm and cl,7
asm shr al,cl
asm out dx,al

asm mov ax,0xa000
asm mov es,ax
asm mov al,es:[di]
asm mov es:[di],ch

__emit__(0x66);
asm inc bx
__emit__(0x66);
__emit__(0x81,0xfb);
asm dd (40*VGA_HEIGHT)
asm jne wbitmap_loop

asm pop ax
asm dec dx
asm mov ax,0x0005
asm out dx,ax
asm mov ax,0xff08
asm out dx,ax
}
以上です。
よろしく、お願いいたします。
ミント  [1999/08/19 Thu 09:16:59]  [210.154.7.18]

まじめまして、ミントと申します。
アセンブラは、はじめてで勉強しようと思い、TurboC++の組み込みASMのプログラムから始めているところですが、どーしても理解できません。
勉強不足で恥ずかしいのですが、どなたかご教授をおねがいできないでしょうか?
以下にプログラムを抜粋致しました。
よろしくお願いいたします。

void wbitmap_output(void)
{
asm mov dx,0x03c4
asm mov ax,0x0f02
asm out dx,ax
asm mov dx,0x03ce
asm mov ax,0x0205
asm out dx,ax
asm mov al,0x08
asm out dx,al
asm inc dx

__emit__(0x66); /* 詰炯歡泪参殉ヌ烱岬現 */
__emit__(0xbb); /* mov ebx,immed32 */
asm dd 0 /* immed32 = 0 */

asm les si,dword ptr wbitmap
asm jmp short wbitmap_2
wbitmap_loop:;
asm pop ax
asm add si,1
asm jnc wbitmap_1
asm add ax,0x1000
wbitmap_1:;
asm mov es,ax
wbitmap_2:;
asm mov ch,byte ptr es:[si]
asm push es

__emit__(0x66); /* 詰炯歡泪参殉ヌ烱岬現 */
asm mov di,bx /* mov edi,ebx */
asm mov cl,3
__emit__(0x66); /* 詰炯歡泪参殉ヌ烱岬現 */
asm shr di,cl /* shr edi,cl */

asm mov al,0x80
asm mov cl,bl
asm and cl,7
asm shr al,cl
asm out dx,al

asm mov ax,0xa000
asm mov es,ax
asm mov al,es:[di]
asm mov es:[di],ch

__emit__(0x66); /* 詰炯歡泪参殉ヌ烱岬現 */
asm inc bx /* inc ebx */
__emit__(0x66); /* 詰炯歡泪参殉ヌ烱岬現 */
__emit__(0x81,0xfb); /* cmp ebx,immed32 */
asm dd (40*VGA_HEIGHT)
asm jne wbitmap_loop /* if not equ then jmp */

asm pop ax
asm dec dx
asm mov ax,0x0005
asm out dx,ax
asm mov ax,0xff08
asm out dx,ax
}

澤口@大崎  [1999/08/18 Wed 19:04:07]  [210.141.243.66]

澤口@大崎です。

AMD のサイトをうろついていたら、3DNOW! の SDK というもの
がありました。全部で 40MB くらいあります。
ダウンロードには簡単なレジスト( E-Mail アドレスを記入)が
いります。

http://www.amd.com/swdev/3dsdk/index.html

わたしのマシンは AMD の CPU ではないので縁がありませんが、
ご参考までに。
澤口@大崎  [1999/08/18 Wed 13:58:31]  [210.141.243.66]

澤口@大崎です。

to まえたけさん:

Web で OBJ2ASM を検索したら、これ 86 年に作られたツール何です
ね。おそらく、80386 以降に対応していないか、OBJ の形式が少し変
わったかでエラーが出ているのだと思います。
Sourcer97 も OBJ の逆アセンブルには対応していません。わたしの
知っている限りでは Watcom C++ 付属の Watcom Disassembler
(Wdis.exe) がこの種の OBJ ファイルを逆アセンブルできます。

まえたけ  [1999/08/18 Wed 09:37:48]  [210.168.134.1]

はじめまして、まえたけといいます。

MSC6で作成したOBJファイルを逆アセンブラを
行いたいのですが、簡単ないい方法があればご教授願います。
OSはMSDOS、PC98です。
フリーのOBJ2ASM.EXEを使ってみたのですがMSC6は未対応
なのかエラーになってしまいます。
Sourcer 97とかで実現可能なのでしょうか?
よろしくお願いいたします。
澤口@大崎  [1999/08/17 Tue 23:18:31]  [210.141.243.66]

澤口@大崎です。

to ロドリゲスさん:

TASM も使い勝手の良いアセンブラなんですが、単体購入でき
ないのが玉に瑕。
TASM の IDE なんてのがありました。

http://tasm.freeservers.com/

こちらは開発中らしい。

http://www.iwaynet.net/~billhudson/vta.htm

最近見つけたアセンブラ。

http://www.visualassembler.com/downloads.htm
http://www.geocities.com/SiliconValley/Bay/3437/
澤口@大崎  [1999/08/17 Tue 22:57:16]  [210.141.243.66]

澤口@大崎です。

to dss さん:

こんなページをみつけました。

http://godot.tuniv.szczecin.pl/~mjaskula/tomi/pc/video.html

メモリに書き込んでグラフィック描画って、VGA 画面とかの話
ですよね?
VGA までならモード設定さえできれば、PC98 と同様に VRAM
アドレスを指定して(セグメントで言えば A000-C000)にグラ
フィックデータを書けば良いのです。
SVGA 以上の解像度や色数になると、ビデオメモリがメインメ
モリの範囲では間に合わなくなるので、バンク切り替えやらな
にやら面倒になるので、VESA BIOS のお世話になるのですが。
ET4000 の頃まではグラフィックスアクセラレータを直接いじる
プログラムも見かけたんですが、最近の高性能アクセラレータの
ドライバをバイパスするプログラムはさすがにやったことないで
す。
描画表現のテクニックはやはりメガデモに学ぶのが一番いいと思
います。リンクをたどればソース付きのプログラムがたくさんあ
ります。

http://demo.and.or.jp/pcdemo/demoftp.htm
dss  [1999/08/16 Mon 12:01:18]  [210.154.182.54]

to ロドリゲスさん

下のほう(7/29)で澤口さんが書いていますよ。

>Microsoftの MASM はここのページを参考にしてダウンロードできます。
>↓
>http://home.att.net/~jackklein/x86/x86_main.html
ロドリゲス  [1999/08/16 Mon 06:25:35]  [210.234.48.169]

皆さんアセンブルするためのアセンブラは何を使ってますか?
私は「TASM」でやろうかなと思っています。

MASMといわれるものを使用したいのですが、どうやって手に
入れれるのでしょうか?

どうかよろしくお願いします。
dss  [1999/08/16 Mon 00:27:05]  [210.154.182.152]

こんにちわ。
初歩的な質問かもしれませんが、
メモリに値を書き込んで、グラフィック描画するには
どこにどうやってやれば良いのでしょうか。
そういうことができると聞いたことがあるのですが、
具体的な方法がさっぱり分かりません。
そういった情報の入手先なんかも教えてくれたら
嬉しいです。
どなたかご教授お願いします。
大事な事を書き忘れる所でした。
機種は98ではなくDOS/V機(compaq)です。
澤口@大崎  [1999/08/10 Tue 23:30:21]  [210.141.243.66]

澤口@大崎です。

to たろーさん:

Pentium や 486 はまとめて、x86 系と呼ばれる CPU です。
いわゆる DOS/V PC で走るアセンブラプログラムを組むため
には x86 用アセンブラが必要です。アセンブラ本体の入手や
参考書、サンプルソースの入手先はこの掲示板のログを読めば
ある程度見当がつくと思います。
でも、Z80 CPU の参考書を購入しても別に間違いではなかった
んですよ。Z80 のアセンブラも Web からフリーのものが入手
できますし、パソコン上で Z80 シミュレータを走らせれば実行
も可能です。MSX シミュレータを Web からダウンロードして、
グラフィカルゲームを作ることもできますから。
たろう  [1999/08/10 Tue 06:36:51]  [210.234.48.205]

こん××わ!はじめまして、たろうっていいます。

C言語とアセンブリ言語を両方はじめようと思って検索エンジンで
いろいろと探していたら、このページを見つけました。

こういうページは初めてなのでとってもありがたいです。
今までに見つけたページはそのほとんどが応用ページでした。

それでいきなり質問があるのですが、CPUの種類を教えて欲しい
のですが。何か「Z80」やらなんやらどのCPUかわかりません・・・

うちのはpentiumと486DX(98)です。
この2つでアセンブラをはじめる場合、CPUの種類はどれにあたるの
でしょうか?

余談なのですがこのページをみつける前、無謀にも「Z80アセンブラ」
の本を購入しかけてました。危なかったです。
力卜  [1999/08/08 Sun 22:56:08]  [202.248.54.90]

力卜です。自己フォローします。

> TOWNS用のハード、BIOSがそこそこ詳しく書かれた書籍が、
> 今は入手困難でしょうが、あります。FM-TOWNSテクニカルブック
> という本で、通称「赤本」です。ASCIIが出していて、値段は
> 8,500円です。(千葉憲昭著 ISBN4-7561-0467-3)

「…テクニカルブック」は「…テクニカルデータブック」の
誤りでした。

紀伊国屋書店のインターネット仮想書店の国内和書の検索
http://bookweb.kinokuniya.co.jp/cgi-bin/wshosc.wb?USER=GUEST

で、書名に「FM TOWNSテクニカルデータブック」と入力し、
検索実行ボタンを押せば、なんと、まだ購入できるみたいです。
# それも、古い版のものも買えるみたい。

ここは、うまくいけば入手しづらい古い本も購入できるかも
しれないので、欲しい本がある人はチェックしてみるとよい
かも知れません。

力卜  [1999/08/08 Sun 22:37:18]  [202.248.54.90]

みなさん、始めまして。力卜と申します。
ここはなんどか参照させてもらっています。

Kakushiさん、こんばんは。TOWNSですか。私、持っています。(^_^)

残念ながら古本屋の情報ではありません。
TOWNSはですね、少なくとも 3つの実行環境(OS)を持っています。
ご存知かとも思いますが、書いてみます。

1つめは、MS-DOS(*.COM, *.EXE)。これは富士通のビジネスマシンの
FMR50と互換を持つようにBIOS呼び出しをするプログラミングをする
ことで作ります。関連書籍としては、今はもうほとんど入手困難と
思いますが、FMR徹底解析マニュアル?とかいう本が BNNという
出版社から出ていました。値段は4,000円ぐらいだったような…。
なお、MS-DOS汎用(int 20h,21h,22h,23h,24h,25hなど)の範囲で
プログラミングすれば、TOWNSでも他機種でも動作します。

2つめは、MS-Windows3.1, Windows95(*.EXE)。デバイスドライバ
などの機種依存をするもの以外は基本的に同一のインタフェースで
動作するので、機種によるハードの差異を考えずにプログラミング
できます。これは、一般の書籍が参考になります。
# Windowsでのアセンブラでの開発の書籍なんて
# 知りませんが。;-(
なお、Windows上では、MS-DOS汎用、FMR50互換のBIOS呼び出しに
よるMS-DOSのプログラムも動作します。

3つめは、TOWNS-OS。TOWNS-OS上では、MS-DOS汎用と、FMR50互換
のBIOS呼び出しによるプログラムが動作します。あと、TOWNSの機能を
最大限に発揮するには、Phar Lap softwareの 386|DOS-EXTENDER
という32ビットDOSエクステンダの実行ファイル形式である、
*.EXPというファイルを作る必要があります。
TOWNS-OSは、この386|DOS-EXTENDERにTOWNS固有の機能をBIOS
(far CALLによる呼び出し)として加えたものなのです。
32ビットOMF形式のオブジェクトファイルを出力するアセンブラと
それをリンクし、*.EXP形式の実行ファイルを作り出すリンカが
必要です。nasmは多分32ビットOMFを作れるし、NiftyのFEXTには
フリーのリンカもありました。NLINKというヤツだったかな。
TOWNS用のハード、BIOSがそこそこ詳しく書かれた書籍が、
今は入手困難でしょうが、あります。FM-TOWNSテクニカルブック
という本で、通称「赤本」です。ASCIIが出していて、値段は
8,500円です。(千葉憲昭著 ISBN4-7561-0467-3)
# Kakushiさんが本文に書かれていた「データブック」とは
# これのことなのかな??

ちなみに、私がWeb上でTOWNSのハードの情報(BIOSやI/Oポート)
を見たことはないです。Niftyにも細かい質疑は載っていることが
ありますが、プログラミングのためのハードの情報はないです。

Web上に、gccの移植版で TOWNS-OS用のものが探せばある
はずなので、頑張って探してみてください。
このgccのTOWNS用LIBの中には、gasで書かれた BIOS呼び出しを
行うソースが付属していると思います。

頑張ってみてください。

澤口@大崎  [1999/08/02 Mon 21:27:53]  [210.141.243.66]

澤口@大崎です。

to Kakushiさん:

ひょっとして、現役の TOWNS は珍しくないのかと思って検索
してみたら、確かにポピュラーらしいですね。みなさん物持ち
がいいですね〜

ニフティのフォーラム

http://www.nifty.ne.jp/forum/ftowns/
http://www.nifty.ne.jp/forum/ffmr/

Webページ

http://www.mahoroba.or.jp/~kazstar/#towns
http://w3.scan.or.jp/~ena/towns.html

メーリングリスト

http://bandits.aist-nara.ac.jp/~nakatuka/towns-ml/towns-ml.html
澤口@大崎  [1999/08/02 Mon 19:47:41]  [210.141.243.66]

澤口@大崎です。

to Bootsyさん:

下記サイトにそれらしいドキュメントがありましたが、わたしには
全部読む気力がありません。何かの役に立てばよいのですが。

http://www.neutralzone.org/home/faqsys/cates/video.html



VGA Prog. Master Reference Manual

です。左側のちっこい丸をクリックするとダウンロード(vga.doc)
できます。


澤口@大崎  [1999/08/02 Mon 18:08:01]  [210.141.243.66]

澤口@大崎です。

to Kakushiさん:

Device Development Kit の略です。早い話が、Windows 用の
デバイスドライバを作るために最小限必要なツールとリソースの
組み合わせです。(下記ページ参照)
C 言語だけでは作れないので、MASM も配布しているわけです。

http://microsoft.com/hwdev/default.htm

TOWNS とか 16β のハード情報となると、Nifty の会議室くらい
ですかね、まだ残っていそうなのは。(Nifty にははいってない
ので、実はよくわからない)
Bootsy  [1999/08/02 Mon 16:12:35]  [210.163.9.85]

はじめまして
いきなり質問ですみません。
僕はアセンブラでINT10hを使わず、直接VGAのレジスタを操作して、
自分独自の画面モードを作ってみたいと思っているのですが、
そのための資料が手に入らなくて困っています。VGAレジスタを扱うには
Richard Ferraroという人の「Programmer's guide to the EGA and VGA cards」
という本が必須だとききましたが、もう手に入らないようです。
そこで、VGAの各レジスタの働きを詳しく解説してあるような
ホームページなどをどなたかご存じの方教えていただけないでしょうか?




kakushi  [1999/08/02 Mon 14:12:25]  [210.238.30.214]

to 澤口@大崎さん


((何年か前までは、Windows DDK は MSDN 会員しか入手できなかったんですが、今はフリーです。))

 またまた初歩的な質問で済みません。Windows DDK ってなんですか?(^^);;


((しかし、 FM TOWNS ですか・・・コンピュータ教育の走りのころは、富士通が公立学校に強かったんで、結構教室に入ってましたね。ちなみに、わたしの知り合いの先生は FM-16βなど使ってます。))

 うちの学校では、FM-16βも最新のパソコンとして動いています。
澤口@大崎  [1999/08/02 Mon 11:50:37]  [210.141.243.66]

澤口@大崎です。

to Kakushi さん:

何年か前までは、Windows DDK は MSDN 会員しか入手できなかった
んですが、今はフリーです。ただ、サイズが普通じゃないですし、雑
誌の付録 CD についてくるといったものでもないので、ポピュラーで
はないですけどね。
VC++ で普通のアプリを組んでいる分にはインラインアセンブラで事足
りるんですが、デバイスドライバなどを開発する場合に必須になります。
しかし、 FM TOWNS ですか・・・コンピュータ教育の走りのころは、富
士通が公立学校に強かったんで、結構教室に入ってましたね。ちなみに、
わたしの知り合いの先生は FM-16βなど使ってます。
うーん、 FM TOWNS の資料を集めるより、アルバイトして中古の 486
マシンを入手した方が安上がりじゃないですかね。探せば2千円くらいか
らありますよ。
Kakushi  [1999/07/31 Sat 11:17:49]  [210.238.30.214]

笑われる質問かもしれませんがお願いします。

澤口@大崎さんへ質問なんですが、MASMってフリーなんですか?詳しい解説をお願いしたいのですが。よろしくお願いします。
Kakushi  [1999/07/31 Sat 00:20:49]  [210.238.30.214]

初めましてこんにちは。(こんばんはかな?)

僕はアセンブラを初めてまだ6ヶ月ほどしかたっていない学生です。先輩の薦めでアセンブラを始めました。非常におもしろいですね。

 ところで質問なんですが、うちの学校ではTOWNSというパソコンを使っています(知っていますよね)。というわけで、当然アセンブラをやるにあたって「データブック」が非常にほしいのです。それ以外にも「DOS/Vテクニカル・リファレンス・マニュアル」とか、「8086秘伝の書」とかもほしいのですが、本屋を探してもどこにもありません。(DOS/Vプログラミングリファレンスだけは、2週間ほど前に秋葉原の書泉にあったのですぐに購入しました)
 で、誰か理工書専門の本屋(古本屋)を教えてください。お願いします。入手方法なども教えてくれるとうれしいです。
澤口@大崎  [1999/07/29 Thu 15:57:58]  [210.141.243.66]

澤口@大崎です。

to Takazoさん:

フリーのものを自分流にまとめてみました。
Microsoftの MASM はここのページを参考にしてダウンロード
できます。

http://home.att.net/~jackklein/x86/x86_main.html

フリーの NASM は定番でしょう。

http://www.web-sites.co.uk/nasm/

8086のみを対象とするなら、 A86 も海外ではよく使われている。

http://eji.com/

ドキュメントとツールの豊富さなら、やはり GNU なのですが、
セットアップの七面倒さも半端じゃない。
gas.README を読んで見て下さい。

ftp://prep.ai.mit.edu/pub/gnu/

Assembler の tutorial とか Resource のリンク集はここら。

http://cmpent.eng.emu.edu.tr/Atlig/Pl/assembly_index.htm
http://www.jmas.co.jp/FAQs/assembly-language/x86/general/part1

ちなみに、わたしは Borland の Tasm5.0 か Watcom の Wasm を
使ってます。いずれも単品販売はされてないので、趣味で使うには
ちょっと・・・

澤口@大崎  [1999/07/28 Wed 19:41:50]  [210.141.243.66]

澤口@大崎です。

to ふぁいんさん:

ここにある D386 というデバッガが 3DNOW! とか PenIII 対応とか
になっているらしいですが、$82 払えと書いてある・・・

http://eji.com/a86/index.htm
Takazo  [1999/07/23 Fri 00:38:25]  [165.76.222.161]

みなさんはじめまして、僕は最近アセンブラに興味を持ち始めました

一応職業はプログラマなのですが、事務処理系なのでアセンブラとは全く異なる世界にいます

なんとかアセンブラを理解したいのですが、どこから、なにから手を付けて良いのか分からずに・・・

CPUの知識は情報処理の勉強でやった位です。理工系出身ではありませんので専門知識もありません

今の所、『はじめて読むマシン語』『はじめて読むアセンブラ』『はじめて読むMASM』を読んだ位です。

この程度の初心者に合うような書籍や、あと、自分のPCにアセンブラを入れたいのですが何か良い製品があれば(マニュアルなどがしっかりしている物)教えて下さい

どなたか、親切な方、よろしくお願いします

matchang  [1999/07/21 Wed 12:54:26]  [210.166.140.66]

皆さんこんにちわ、matchangです。
いきなりぶしつけな質問をしたにも関わらず、
丁寧なレス有り難うございます。

で、早速ですが、chaohさんに教えてもらった、
日高さんのサイトで早速注文する事に。
(プログラム本の割には安価で良かった(^^))

澤口@大崎さんに教えて頂いた本もちょっと探して
みます。

まだまだ経験の少ないヒヨッコですが(今は22です)、
これからもちょくちょく訪問させてもらいますので
どうぞよろしく〜。
澤口@大崎  [1999/07/17 Sat 20:09:28]  [210.141.243.66]

ふぁいあさん:

うーん、フリーのデバッガですと、 MMX 対応も見つかり
ませんね。
SoftIce とか CodeWarrier とかの商用デバッガは 3DNow!
命令にも対応しているらしいんですが。
Intel のサイトにこんなのがありましたが、使えないですか?

http://developer.intel.com/vtune/rvt/

デバッガがサポートしてないときは、自分でアセンブラソース
を書き換えて、グローバルメモリに見たいレジスタなどからコ
ピーしておきます。
ふぁいあ  [1999/07/17 Sat 11:59:19]  [210.132.120.74]

to 澤口@大崎さん

>英語マニュアルはここにありますが、日本語訳された本が
>あるとは聞いたこと無いです。

英語のマニュアルでがんばってみます。

デバッガは色々試してみたんですけど思うものがありませんでした。
NASMは3DNow!やストリーミングSIMDに対応しているのでフリーでこれらをサポートしているデバッガがあると期待していたのですがありませんでした。

chaoh  [1999/07/17 Sat 06:35:59]  [203.140.129.10]
書籍諸々

ども、chaoh です。

> matchang さん

『Z80マシン語秘伝の書』は日高さんのサイトで通販にて購入出来るよ
うです。 でも、「Z80」で良いのでしょうか?(^^; 『8086マシン語秘
伝の書』というのもありますが…。
これらの書籍、 確かに 澤口@大崎 さんの言われているとおり、基礎を
学ぶのには向いていません。基本を押さえたうえで「1ランクレベルアッ
プする」といった感じの本です。しかし、入手困難になりつつあるので、
手に入れておいて損はないでしょう。

新日本プログラミング情報
http://members.aol.com/njprog/


>ココアラ さん

残念ながら、 日高さんのところでも 98版『マシン語サウンドプログラ
ミング』は手に入らないようです。地道に古本屋&提供者を探すしかな
いと思います。ちなみにこの本、自分は持ってません。(^^;

ココアラ  [1999/07/17 Sat 00:41:03]  [210.228.248.100]

実は僕も以前からある書籍を探し求めていたのですが・・・

日高徹さんの、『98』版「マシン語サウンドプログラミング」と
いう本です。アスキーに問い合わせたところ、店頭在庫のみとのこ
となので、あきらめかけていました。

どなたか、在庫のある本屋、もしくは同書を譲ってもいいと
いう方がおられましたら、ご連絡願います。なんだかmatchangさんに
便乗しちゃって申し訳ないんですが・・・
澤口@大崎  [1999/07/16 Fri 20:03:05]  [210.141.243.66]

matchangさん:

その本は多分持っていたと思いますが、なにぶん昔のことなので、
探してみないとわかりません。見つけたらお知らせします。
Z80 の Tips 集みたいな本で、面白く読めることは確かなんです
が、基礎から覚えるには、多分不向き。
基礎固めにはサイエンス社の「Z80プログラミング」(タイトルに
自信なし)の方が良いと思います。
澤口@大崎  [1999/07/16 Fri 19:55:05]  [210.141.243.66]

ふぁいあさん:
英語マニュアルはここにありますが、日本語訳された本が
あるとは聞いたこと無いです。

http://www.web-sites.co.uk/nasm/

デバッガなんてのはブレークポイントが設定できて変数ダ
ンプができれば、まぁどれでも使えますが。

http://www.vector.co.jp/vpack/filearea/dos/prog/debug/index.html

DOS,Win,Linux となっていましたが、x86 のアセンブラに
関しては、DOS で基本をじっくり覚えた方がいいと思います。
ふぁいあ  [1999/07/16 Fri 17:09:01]  [210.132.120.74]

はじめまして。アセンブラのことを調べていてここに来ました。
アセンブラは全く初めてです。過去ログを見てNASMをDLしてきたんですけど、文法がほとんどわかりません。NASMを1から勉強するのになにかよい本は無いでしょうか?
あと、おすすめのデバッガとかありませんか(Win,DOS,Linux)。
matchang  [1999/07/16 Fri 13:14:14]  [210.166.140.66]

皆さんはじめまして、matchangと申します。
一応プログラマやってますが、自身のレベルアップの
為、アセンブラを真剣に勉強してみようかな、
と思ってます。
そこで先輩から良い本を進められたのですが、
「Z80 マシン語秘伝の書」(日高徹著・啓学出版)
という本なんです。
ある程度大きな本屋でも探しましたが見つかりませんし、
ネットでの古書売買でも発見出来ませんでした。
もし、持ってるけどもう使わないから譲ってもいいよ、
あるいは、
売ってるとこ知ってます〜(出来れば代理購入して欲しいです)
という方、おられましたらメールにてご連絡下さい。
古いm本なので、なかなか難しいとは思いますが、
どうかよろしくお願いします。

Unit Missing Link  [1999/07/16 Fri 02:07:37]  [210.235.192.20]
Unit Missing Link's Web page 'Rhythm'

02/01/99 〜 03/31/99 の書き込みをログページ Message Log 13 に、
04/01/99 〜 06/30/99 の書き込みをログページ Message Log 14 に移動しました。

皆様、日々の書き込み誠にありがとうございます。

更新が出来ていないのにも関わらず、この度 Technical Assembler も 20,000
アクセスを超えることが出来ました。

訪問いただいている全ての方に感謝いたします。

少しずつですが、ページの内容の充実に努めたいと思っておりますので、今後
とも Technical Assembler よろしくお願いいたします。
みら  [1999/07/16 Fri 00:39:19]  [210.174.85.13]

Winchip2用に最適化したいんですが、
そういった話題を扱ったページはありませんか?
もしくは資料はないでしょうか

↓本文空でも登録されちゃうんですね...
消したい...

みら  [1999/07/16 Fri 00:34:25]  [210.174.85.13]


澤口@大崎  [1999/07/15 Thu 21:34:04]  [210.141.243.66]

澤口@大崎です。

たっちんさんは「今さらアセンブラ・・・」と書かれましたけど、
アセンブラは入口があって出口のない、永遠に新しい世界です。
メガデモなどみると、よく納得できますよ。
わたしは時々画像処理などやるのですが、10年くらい前ですと、
386 マシンなどでは JPEG 圧縮・解凍などは絶対実用にならな
いと言われていたのが、今のソフト技術だと、同じスペックの
マシンでちゃんとできていますから。
MPEG-2 エンコードもリアルタイム処理には数百万円するハード
が必要だったのが、今日の新聞ではそれをソフトでやらかした会
社が乗ってました。
腕の差が露骨にあらわれる世界であることは間違いないです。
がんばって下さい。
tom  [1999/07/14 Wed 02:20:37]  [210.147.86.58]

armさんありがとうございました。
紹介してくれたページよく読んでみます。
arm  [1999/07/14 Wed 00:34:24]  [163.139.181.22]
藤波 順久さんの趣味のページ (必見)

クロック数ですが、藤波さんという方のページにかなり詳細な資料が
ありました。(内容からして、zobにいらした方でしょうか?)
86系はレジスタが少ない (と思う) ので、ものによっては綱渡りのような
最適化が必要ですが、この方は極めの領域に入っていると思います。

Pentium2とか3は載ってませんが、まあ主要命令は1でしょう。きっと。
最近のプロセッサだとクロック数よりは並列実行数のほうが大事ですが。

あと、たっちんさん、その本が学校の教材で指定されたのでなければ、
MASMの本で十分だと思いますよ。また、C言語との関連ですが、
86系だと、私はLSI−Cのマニュアルがなかなか良いと思います。
一冊にまとまっていて、ROM化の話とかも載っています。

私が持っているコンパイラでは、MS−CやLSI−Cがアセンブラの
ソースを吐けるので、アセンブラの知識があれば楽しめます。
(関数が最適なコードになっているかどうかの確認もできるし)
たっちん  [1999/07/12 Mon 23:56:59]  [210.170.136.21]

ここあらさん
学校でやってるんですよね。ほんと
いまさらアセンブラって思うんですがやはり基本中の基本だそうで
やっています。今は秋のチーム制作用の作品の企画に取り掛かっています。パソコンのDOS用ソフトの企画なんでアセンブラは必要と。
現在のコンシューマソフトはすべてCでできるそうですね。
ま〜覚えておいて損はないと。
秋には情報2種を受験します。

澤口@大崎さん
ありがとうございます。メールださせていただきました。
tom  [1999/07/12 Mon 22:09:29]  [210.147.86.34]

AZUCOさんレスありがとうございます。

インテルのマニュアルは
インテル・アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル(上、中、下巻 & 追加情報)
インテル・アーキテクチャ最適化マニュアル

(ia_s_dv1.pdf, ia_s_dv2.pdf, ia_s_dv3.pdf, 24369101j.pdf, 24368901j.pdf, 24369001j.pdf, ia_opti.pdf というファイル(全て日本語版))
というのを読んでみたのですが、クロック数がどこに載っているかは分かりませんでした。
あと英語版の
AP-479 Pentium(R) Processor Clock Design
というのを見てみたのですが、何か全然違うものみたいな感じでした。

http://www.intel.co.jp/jp/developer/design/intarch/manuals/index.htm
上記のファイルはここからダウンロードしました。

もしAZUCOさんがみた資料のファイル名が分かれば教えてください。
AZUCO  [1999/07/12 Mon 00:06:36]  [210.249.173.54]

クロック数は、インテルのサイトにある資料にありました。
インテルのサイトで、マニュアルを検索して見てください。

ちなみにプロセッサによってかかるクロック数は違います。
最近のプロセッサなら、パイプラインに入ってる命令の違いによっても変わるかもしれませんね。
tom  [1999/07/11 Sun 07:48:54]  [210.147.20.62]

addとかmovとかの命令のClock数ってどうやって調べるんでしょうか。

澤口@大崎  [1999/07/10 Sat 13:35:52]  [210.141.243.66]

たっちんさん:

その本は持っていますし、使っていませんから、メールいただければ
送付します。
でも、改めて読んでみて、どうしても必要だと言うほどの内容がある
ようには見えないんですけどね。
昔は割り込み処理がコンパイラでサポートされていませんから、この
種のノウハウは必要だったんですけど、今は interrupt 関数があり
ますから。
本で使われているのは MS-C と MASM (バージョンは 3.0 か?)、
ターゲットとしては NEC 旧PC9801 が想定されてます。
ここあら  [1999/07/07 Wed 10:04:02]  [210.235.236.170]

たっちんさん:
 ゲームスクールでも86でMASMなんてやったり
 するんですね。あ、コンシューマ用じゃないのかな?
 それとも練習用なのかな?

 手持ちの書籍を調べてみましたが、お探しの本は見あたり
 ませんでした。ごめんなさい。

 あー、授業サボってこんなこと書いてていいのかな。

たっちん  [1999/07/06 Tue 23:27:16]  [210.170.178.204]
第1チャレンジダービー 第2 COMICER

え〜とはじめましてみなさん
現在ゲームスクールでプログラム勉強しているものです。
ちょっとお願いがありまして書かせていただきます。
現在 工学図書の磯部 俊男 著 「C言語とアセンブラ」
という本を注文したんですが、もう在庫がないといわれてしまって
手のほどこしようがありません。
学校ではMASM、86系やってます。
もし 上の本を持っていて、今はもう使わないという方がいましたら
譲っていただけないでしょうか?
もしくは買い取ります。また、どこの本屋にあったという情報も
ありましたらお願いします。お手数ですがメールくださいませ。
見つかり次第この場で報告します。
たっちん  [1999/07/06 Tue 23:20:34]  [210.170.178.204]
第1チャレンジダービー


しゅれん  [1999/07/01 Thu 15:47:43]  [203.179.35.67]
DDN&PE

はじめまして。
通りすがりなのですが、
ちょっとだけ回答を。

TC++のmakeコマンドは確かnmake(unix上のmakeコマンドの派生)
互換ではなかったはずなので、
nmake互換であるVC++のmakeとは動作が違うはずです。

386/486などの仮想メモリの解説書としては
Intelのマイクロプロセッサファミリーアーキテクチャか
(手に入るかどうかわからないですが)オーム社の
図解のシリーズがお勧めです。
GDT、LDTなどについて詳細に解説されています。

Win32上にてソフトウェア割り込みなどを発生させる
プログラムの場合、そのプログラムのプラットホームが
プロテクトモードか、VM86モードかによって
動作に違いが出てくるはずです。
16Bitバイナリを吐き出すTC++をお使いであれば動くでしょうが
32Bitバイナリをはくコンパイラを使用していた場合、
インラインアセンブラでは解決できないでしょう。

それでは。

相模隆明  [1999/07/01 Thu 13:00:23]  [150.15.16.31]

>個人的に思うのですが、解答する側ももうちょっと突っ込んだ解答を
>してあげないと、その解答自体が無意味なものになると思います。

それもそうですね。自信のない時は黙っている方が親切かもしれません。

LASMの体験版を公開している多摩ソフトウエアが、今度はCコンパイラの
体験版を公開するようですね。7月中と書いてあるのでもうすぐでしょう。
非常に楽しみです。

私の名前が相模孝明になってしまっている箇所がありますが、それは間違いで、
本当は相模隆明です。(たいして重要な問題でもないですけど。)
やすひろ  [1999/07/01 Thu 02:44:25]  [202.230.246.161]

>TL/I? TL/1? oneかLどちらのスペルかは不明ですが
TL/I? TL/1? oneかiどちらのスペルかは不明ですが

済みません間違いました


やすひろ  [1999/07/01 Thu 02:42:51]  [202.230.246.161]


>全然違う言語です。
>TL/I は Tiny Language/1 の略だそうです。
>相当にマイナーな言語だったらしくて、サーチエンジンで調べても
>全然見つからないのです。

みなさん こんにちは
なつかしい言葉を聞きましたので筆を取ってしまいました
TL/I? TL/1? oneかLどちらのスペルかは不明ですが
ワンと発音してました(^^;
マイナーどころか結構有名だっりします。
ただし、私のようなおじさんしか知らないはずです。

なぜかと言いますと記録媒体にカセットを用いていた
PC8001やAPPLE2,PETなどの時代の言語でしたから
言語仕様はその当時の月間ASCII?のバックナンバーの何処かに
有りますが、調べても・・・・・・・・(^^;

http://www1.nisiq.net/~cpulot/Dict.htm

やすひろ(ytodate)



e-mail: mist@e-net.or.jp
Structured Anchor Tree Return to Menu Return to Parent Menu 
Powered by Unit Missing Link.