far和near是子程序调用时的参数 如果子程序和调用程序在一个段内,子程序参数设置为near 如果子程序和调用程序不在一个段内,子程序参数设置为far 这里主程序定义为far是因为: 系统把主程序当作DOS调用的一个子程序 DOS内核与主程序不是在同一个段地址内 所以主程序参数要用far
proc是子程序定义, far是该子程序的属性,决定调用程序和子程序是否在同一代码段
子程序名 PROC NEAR ( 或 FAR ) 如:main proc far
NEAR属性(段内近调用): 调用程序和子程序在同一代码段中,只能被相同代码段的其他程序调用;
FAR属性(段间远调用): 调用程序和子程序不在同一代码段中,可以被相同或不同代码段的程序调用.