Assembly 在汇编语言中向后移动指针
我正在尝试相对于文件末尾向后移动文件指针。这就是我正在做的-Assembly 在汇编语言中向后移动指针,assembly,Assembly,我正在尝试相对于文件末尾向后移动文件指针。这就是我正在做的- .model tiny .386 .data fil1 db 'testing.txt',0 dat1 db 100 dup('$') dat2 db 100 dup('$') .code .startup mov al,02h lea dx,fil1 mov ah,3dh int 21h
.model tiny
.386
.data
fil1 db 'testing.txt',0
dat1 db 100 dup('$')
dat2 db 100 dup('$')
.code
.startup
mov al,02h
lea dx,fil1
mov ah,3dh
int 21h
mov bx,ax
mov al,2
mov cx,0
mov dx,-3
mov ah,42h
int 21h
lea dx,dat1
mov cx,2
mov ah,3fh
int 21h
lea dx,dat1
mov ah,09h
int 21h
mov ah,3eh
int 21h
.exit
end
但是控制台上没有显示任何内容。我不知道哪里出了问题。对
INT 21H/AH=42H
的描述是:
CX:DX
=(有符号)距新文件位置原点的偏移量
通过设置
cx=0
指定的是正偏移量0x0000FFFD(65533),而不是负偏移量-3(0xfffffd)。您应该改为设置cx=0xFFFF
(也可以表示为cx=-1
)。INT 21H/AH=42H
的说明如下:
CX:DX
=(有符号)距新文件位置原点的偏移量
通过设置
cx=0
指定的是正偏移量0x0000FFFD(65533),而不是负偏移量-3(0xfffffd)。您应该改为设置cx=0xFFFF
(也可以表示为cx=-1
)。INT 21H/AH=42H
的说明如下:
CX:DX
=(有符号)距新文件位置原点的偏移量
通过设置
cx=0
指定的是正偏移量0x0000FFFD(65533),而不是负偏移量-3(0xfffffd)。您应该改为设置cx=0xFFFF
(也可以表示为cx=-1
)。INT 21H/AH=42H
的说明如下:
CX:DX
=(有符号)距新文件位置原点的偏移量
通过设置cx=0
指定的是正偏移量0x0000FFFD(65533),而不是负偏移量-3(0xfffffd)。您应该改为设置cx=0xFFFF
(也可以表示为cx=-1
)