level 3
情感禁区110
楼主
模块A:
extrn set:far
public buf1
.model small
.data
buf1 db 3
.code
start:
mov ax,@data
mov ds,ax
call set
mov dl,buf1
mov ah,2
int 21h
mov ah,4ch
int 21h
end start
模块B:
extrn buf1:BYTE
public set
data segment
buf2 db '5'
data ends
code segment
assume cs:code,ds:data
set proc far
push ds
mov ax,data
mov dx,ax
mov bl,buf2
mov ax,seg buf1
mov ds,ax
mov al,buf1
add al,bl
mov buf1,al
pop ds
ret
set endp
code ends
end
运行结果为啥不是显示 8?而是显示一个字符,该字符样子是两竖下面一横。
2018年12月19日 00点12分
1
extrn set:far
public buf1
.model small
.data
buf1 db 3
.code
start:
mov ax,@data
mov ds,ax
call set
mov dl,buf1
mov ah,2
int 21h
mov ah,4ch
int 21h
end start
模块B:
extrn buf1:BYTE
public set
data segment
buf2 db '5'
data ends
code segment
assume cs:code,ds:data
set proc far
push ds
mov ax,data
mov dx,ax
mov bl,buf2
mov ax,seg buf1
mov ds,ax
mov al,buf1
add al,bl
mov buf1,al
pop ds
ret
set endp
code ends
end
运行结果为啥不是显示 8?而是显示一个字符,该字符样子是两竖下面一横。