- [游客] 飘过 06/11 13:31
- [fpamc] 貌似我正在步入你的路线……`(*∩_∩*)′Up!Up! 05/24 07:46
- [782936509] 敢问高手你是什么基础开始学的,我没有基础想学编程可以的吗?很想成为一个编程员,希望多多指教,呵呵 12/24 19:26
- [aten] 上面的程序我忘记设置要写入的扇区数了,……-_-~! 08/07 15:50
- [keyia] 啊,如梦初醒!万分感谢 05/28 01:32
- [aten] 好久没来汇编网了,拿你调试的结果来说吧! F:\dosimg\>debug c0s.exe - 05/26 22:52
- [keyia] keyia:变成游客了 05/22 19:42
- [游客] 向您请教: (8)从上我们可以看出tc.exe把c0s.obj和用户obj文件一同进行连接,生成e 05/22 19:40
- [aten] dw 定义的应该是10个字单元,我写成了8个了!所以答案就成了20H 04/26 22:01
- [aten] 恩,^_^ 04/24 18:36
- [游客] 这个,你的那个安装INT9中断程序的程序有一点错误,以下这个是我改正后的: assume cs:c 10/08 07:28
- [游客] 没想到我想走的路和正在走的路你已经走过一遍了,可以的话请加865650570——凌陶 愿我们在同一 10/07 23:30
- [keyia] 向您请教: (8)从上我们可以看出tc.exe把c0s.obj和用户obj文件一同进行连接,生成 05/22 19:44
[ 游客 发表于 2011-10-08 07:28 ]
这个,你的那个安装INT9中断程序的程序有一点错误,以下这个是我改正后的:
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
start:mov ax,stack
mov ss,ax
mov sp,128
push cs
pop ds
mov ax,0
mov es,ax
mov si,offset int9
mov di,204h
mov cx,offset int9end-offset int9
cld
rep movsb
push es:[9*4]
pop es:[200h]
push es:[9*4+2]
pop es:[202h]
cli
mov word ptr es:[9*4],204h
mov word ptr es:[9*4+2],0
sti
mov ax,4c00h
int 21h
int9:push ax
push bx
push cx
push es
in al,60h
pushf
call dword ptr cs:[200h]
rea:
in al,60h
cmp al,09eh
je nex
cmp al,01eh
je int9ret
nex: mov ax,0b800h
mov es,ax
mov bx,0
mov cx,2000
s: mov byte ptr es:[bx],'A'
mov byte ptr es:[bx+1],00000101b
add bx,2
loop s
int9ret:
pop es
pop cx
pop bx
pop ax
iret
int9end:nop
code ends
end start
[ 游客 发表于 2011-10-07 23:30 ]
没想到我想走的路和正在走的路你已经走过一遍了,可以的话请加865650570——凌陶
愿我们在同一天空下,同一条路上,也能够用不同的声音互相呼应对方。
[ keyia 发表于 2009-05-22 19:44 ]
向您请教:
(8)从上我们可以看出tc.exe把c0s.obj和用户obj文件一同进行连接,生成exe文件。......
这句话是怎么理解的?如何看出tc.exe把c0s.obj和用户obj文件一同进行连接?具体表现在什么地方?
这是我调试第7步的数据:
F:\dosimg\minic>debug m.exe
-u 11a
13D6:011A E8DD00 CALL 01FA
13D6:011D 50 PUSH AX
13D6:011E E8F700 CALL 0218
13D6:0121 2E CS:
13D6:0122 8E1EF801 MOV DS,[01F8]
13D6:0126 E87C00 CALL 01A5
13D6:0129 0E PUSH CS
13D6:012A FF16A201 CALL [01A2]
13D6:012E 33C0 XOR AX,AX
13D6:0130 8BF0 MOV SI,AX
13D6:0132 B92F00 MOV CX,002F
13D6:0135 90 NOP
F:\dosimg\>debug c0s.exe
-u 11a
13D6:011A E80000 CALL 011D
13D6:011D 50 PUSH AX
13D6:011E E80000 CALL 0121
13D6:0121 2E CS:
13D6:0122 8E1EF801 MOV DS,[01F8]
13D6:0126 E87C00 CALL 01A5
13D6:0129 0E PUSH CS
13D6:012A FF169601 CALL [0196]
13D6:012E 33C0 XOR AX,AX
13D6:0130 8BF0 MOV SI,AX
13D6:0132 B92F00 MOV CX,002F
13D6:0135 90 NOP
个人很愚笨,请您指点一下。