2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

8086アセンブラで会話しよう。

1 :MASM:01/12/16 01:40.net
XOR AX, AX

2 :名無しさん@お腹いっぱい。:01/12/16 01:56.net
halt

3 :さあね:01/12/16 03:55.net
PORK &HC000,255

4 :んー。:01/12/16 07:40.net
INT 18H;

5 : :01/12/16 10:42.net
LD (HL),A

6 :porori:01/12/16 12:56.net
XLAT

7 :名無しさん@お腹いっぱい。:01/12/16 13:19.net
NOP
NOP
HALT

8 :名無しさん@お腹いっぱい。:01/12/16 14:48.net
CMP AL,5A

9 :名無しさん@お腹いっぱい。:01/12/16 17:21.net
jmp 9

10 :名無しさん@お腹いっぱい。:01/12/16 17:36.net
; つーか、PORKって豚だろ?

11 :名無しさん@お腹いっぱい。:01/12/16 19:20.net
PUSH AX
PUSH DX
POP AX
POP DX

XOR AX, DX
XOR DX, AX
XOR AX, DX

解析していて見かけたコード。お前ら XCHG になにか恨みでもあるのか。

12 :名無しさん@お腹いっぱい。:01/12/16 19:37.net
>11

XCHGはクロック食うとかだっけ?

13 :出張あさはかマン:01/12/16 19:52.net
>>11
8080互換コードなんじゃ?

14 :出張あさはかマン:01/12/16 19:54.net
あえていうならCP/Mバイナリを直接MS-DOSへ移植、とか。

15 : ◆xK91AxII :01/12/16 23:01.net
out 0f0H, al
jmp $

16 :いっぱんほど:01/12/16 23:12.net
MOV ax

17 : ◆xK91AxII :01/12/17 02:19.net
callAspi PROC uses di si,
psrb:DWORD

les bx, psrb
push es
push bx
call DWORD PTR ds:[entryAddress]
add sp, 4
_PEND:
les bx, psrb
mov al, BYTE PTR es:[bx+1]
or al, al
jz _PEND
ret
callAspi ENDP

18 :名無しさん@お腹いっぱい。:01/12/17 05:39.net
INT 1BH

19 :おなかすいた:01/12/17 06:24.net
XOR AX, AX

20 :やーおはよう ◆xK91AxII :01/12/17 07:11.net
mov ax, 0a00H
int 18H

21 :AirH動かない...:01/12/17 11:20.net
>>3
poke

22 :名無しさん@お腹いっぱい。:01/12/17 14:47.net
>>21
つうかBASIC :-)

23 :名無しさん@お腹いっぱい。:01/12/17 15:14.net
shl eax,16

24 : ◆xK91AxII :01/12/17 16:12.net
mov dx, OFFSET _msg
mov ah, 9
int 21H
;中略
_msg db '8086でお願いします。', 13, 10, '$'

25 : ◆PC98AdY6 :01/12/17 17:44.net
mov ax,5690
mov bx,400
mov cx,302
mov dx,1f4
int 1b
cmp ax,b0
jnz $ 'nopに書き換えちゃえ〜

26 : ◆xK91AxII :01/12/17 21:50.net
;FDプロテクト外しdsk?, RADIX 16 って付けてほしいにょ。
mov ax, 4cffH
int 21H ;逝ってよし(ぉ

27 : ◆PC98AdY6 :01/12/18 10:25.net
mov bx,HANDLE
mov ah,45H
int 21H ;オマエモナー

>25の6行目axじゃなくてahだった(苦笑

28 : ◆PC98AdY6 :01/12/18 11:30.net
日高徹/青山学 著
8086 マシン語秘伝の書(ISBN 4-7665-1079-8)

組み込み系のプログラマだけど、たまに読むと参考になります(w

29 :名無しさん@お腹いっぱい。:01/12/18 16:40.net
mov ax,ip
sub ax,5
mov ip,ax

30 :名無しさん@お腹いっぱい。 :01/12/18 16:59.net
MOVF 0x20,W
MOVWF 0x21
BTFSS STATUS,Z
GOTO $+4
BSF STATUS,C

31 : ◆xK91AxII :01/12/19 00:32.net
;>> 28
mov bx, ax
mov ah, 3eH
int 21H

;>>30 bitTestは80386から。

32 :名無しさん@お腹いっぱい。:01/12/19 01:20.net
つーかマクロアセンブラなんかい!
CD 1B をとにかくサーチ。以上!

33 : :01/12/19 01:46.net
push cs
pop ds
mov dx,offset msg
mov ah,09h
int 21h
xor ah,ah
int 21h
msg:
db '逝ってよし','$'

34 :名無しさん@お腹いっぱい。:01/12/19 02:04.net
pusha

35 :反68:01/12/19 02:19.net
そういや昔はアセンブラ使ってたな(笑)

REP LODSBで転送するところをREP LODSDに変えると4倍速だ(笑)
端数の補正は必要だけどね(笑) しまった、MMX以前の話だ(爆笑)

36 : ◆xK91AxII :01/12/19 02:23.net
jmp $+2; パイプラインクリア

37 :反68:01/12/19 02:26.net
>>36
うわ、結構懐かしいワ(笑)

jmp addr;タスクスイッチ

こんなのはどうだ?(笑)

38 : ◆xK91AxII :01/12/19 02:32.net
;>>37
;80386以降のみですか。
;板のローカルルールからすれば、Win3.1も桶っぽいので、
;こういうのもアリってことでいきますか。

39 :名無しさん@お腹いっぱい。:01/12/19 02:34.net
;---------------------------------------------------------------
;【PWM再生】
;in : ds:si = PWMデータエントリ
; cx = データ長
;out:nothing
;brk:
;---------------------------------------------------------------
PWM_Play PROC
push es
push ds
push cx
push ax

push ds
pop es

mov ax,DATA
mov ds,ax

mov [Wave_OFS],si
mov [Wave_SEG],es
mov [Wave_PTR],0
mov [Wave_Flag],0

cli
Timer_Unmask
jmp $+2
jmp $+2
mov al,6
out 37h,al
sti
@@PlayLp:
cmp cx,[Wave_PTR]
ja @@PlayLp

cli
jmp $+2
jmp $+2
mov al,7
out 37h,al
Timer_Mask
sti

pop ax
pop cx
pop ds
pop es
ret
PWM_Play ENDP

40 :反68:01/12/19 02:35.net
>>38
それはいいけど、オレは毎日出てこないから、あまり関係ないかも(笑)

>;80386以降のみですか。
駄目ですね。286を忘れちゃ駄目だよ(笑)
オレは286でプロテクトモードのイロハを独学したよ(笑)

41 :名無しさん@お腹いっぱい。:01/12/19 02:37.net
リセットかけないとリアルモードに戻れないのな・・・286
プロテクトモードからDOSのルーチン使おう思うとそりゃもう大変。

42 :反68:01/12/19 02:39.net
>>39
掲示板にソース出してんじゃねーっ!、つーの!(笑)

でもさ、オレは大文字でソース書くけどな(微笑)
>>39みたいなアホは小文字で書いてるな(笑)
もしかすると>>39の道具も・・・○△□・・・なのか?(大爆笑)

43 :名無しさん@お腹いっぱい。:01/12/19 02:41.net
>>42
個人攻撃に走るのやめたほうがいいよ。
忠告しとく。

44 :反68:01/12/19 02:41.net
>>41
それがチミの頭の悪いところ(爆笑)
じゃあ、戻らなきゃいいんだよ、わかるか、アホ(爆笑)

自分でプロテクトモード用ルーチン作ればいいだけだよ。あんたアホ?(大爆笑)

45 :反68:01/12/19 02:43.net
>>43
あんたにも忠告しとく(笑)
オレを敵に回すな(爆笑)

46 :41:01/12/19 02:47.net
その件は「DOS+@で」という条件つきの
仕事でやってたからしょうがなかったのさ。

ところで、独学された成果ってどこかで発表したり
製品になったりしてないんですか?

47 : ◆xK91AxII :01/12/19 02:48.net
>>40 286を使ったことは一度もなかったりするんで(汁
>>44
各種disk読み出しroutine作るのは死ねる。
...が、リセットかけるよりはマシか。

48 : ◆xK91AxII :01/12/19 02:51.net
;>>46
;286でプロテクトモード、しかも仕事ですか。
;プロていうのは厳しいんですね。

49 :反68:01/12/19 02:53.net


>>47
>286を使ったことは一度もなかったりするんで(汁

 なるほど(笑) プロテクトモードの学習用程度には良いと思うよ。

>各種disk読み出しroutine作るのは死ねる。

 オレは外部I/Oルーチンは作らなかった(笑) ローダに読ませてマ
スクさせてたぞ(笑) ゲームプログラムだったからな(微笑)
死ねると言うより、8877の動作原理がわからず仕舞だったな・・・。

50 :反68:01/12/19 03:00.net
「リセット」って言っても、リセットスイッチ押すワケじゃないよ(笑)
単にリセットベクタにジャンプするだけだからね。そこから、レジューム
する間にオーバーヘッドが発生する事はしょうがないけどな(笑)

51 :反68:01/12/19 03:05.net
どうやらこのスレの住人は寝た様だな。
オレも消えるとするか(笑)

52 :名無しさん@お腹いっぱい。:01/12/19 10:20.net
8877って何?

53 :名無しさん@お腹いっぱい。:01/12/19 10:58.net
M$DOS 2.11 がライセンスフリーだったからフル活用したよ。
というかFD,HDD両対応のプログラム書こうとするとそれ以外無いし。
つーか jmp $+2 はPentium以降で死ぬと思われ。

54 :名無しさん@お腹いっぱい。:01/12/19 12:56.net
うわ、粘着がここにも...

55 :名無しさん@お腹いっぱい。:01/12/19 23:14.net
>>52
8877って富士通のFDCだろ?
データバスの論理が逆になってる8866ってのもあったような気がする。
NECのuPD765と並んで良く使われたな。
プロテクトかけるには8877の方がいろいろ融通が利いて良かったので、
PC-9801用(uPD765使用)のFDを8877使って作ったり(笑)

56 :52:01/12/20 01:09.net
>>55
思い出した。ありがとう。
データバスの論理が逆になってるのは、MB8876だったと思う。
MZのFDCがMB8876で、制御プログラム書いた覚えがあるからたぶん間違いない。
X1はMB8877なのになあ。

57 : ◆xK91AxII :01/12/20 02:47.net
;そして、生き残ったのは...。

58 :反68:01/12/21 02:16.net
>>57
オレだ(微笑)

総レス数 452
142 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200