主题:熟悉汇编和mbr的进。。。。
下面的代码我编译成exe文件后,通过exe2bin转换成bin文件,写入mbr后,无法输出字符串,只有一个光标显示,没有死机。。
谢谢 。。。。
codesg segment
assume cs:codesg,ds:codesg,es:codesg,ss:codesg
org 0
start:
xor ax, ax
mov ss, ax
mov sp, 7c00h
push ax
pop ds
push ax
pop es
sti
; 测试是否支持int13扩展
push ds
mov ax, offset STRING
push ax
mov ax, 050Ah
push ax
call printstr
popf
printstr PROC
PUSHF
MOV AH,00H ;显示文本80*25@16位
MOV AL,02H
INT 10H
PUSH BP
MOV BP,SP
MOV DX,[BP+6]
MOV ES,[BP+10]
MOV BP,[BP+8]
MOV AX,01301H
MOV CX,STRLEN
;MOV BX,41H ; 背景红色 字蓝色 高亮
;MOV BX,3CH ; 98桌面背景,高亮 红色
MOV BX,07H ; 黑底白字
INT 10H
POP BP
RET
printstr ENDP
STRING:
DB "Hello world.........."
STRLEN:
DB ($-STRING)
codesg ends
end start
谢谢 。。。。
codesg segment
assume cs:codesg,ds:codesg,es:codesg,ss:codesg
org 0
start:
xor ax, ax
mov ss, ax
mov sp, 7c00h
push ax
pop ds
push ax
pop es
sti
; 测试是否支持int13扩展
push ds
mov ax, offset STRING
push ax
mov ax, 050Ah
push ax
call printstr
popf
printstr PROC
PUSHF
MOV AH,00H ;显示文本80*25@16位
MOV AL,02H
INT 10H
PUSH BP
MOV BP,SP
MOV DX,[BP+6]
MOV ES,[BP+10]
MOV BP,[BP+8]
MOV AX,01301H
MOV CX,STRLEN
;MOV BX,41H ; 背景红色 字蓝色 高亮
;MOV BX,3CH ; 98桌面背景,高亮 红色
MOV BX,07H ; 黑底白字
INT 10H
POP BP
RET
printstr ENDP
STRING:
DB "Hello world.........."
STRLEN:
DB ($-STRING)
codesg ends
end start