问题描述
我正在研究OS的汇编语言项目。为此,我通过最初的操作系统获得了知识。在此过程中,我尝试了解MS-DOS 1.25。但是,当我运行此文件IO.ASM时,我从下面给出的某些行的代码中得到了四个错误,在这里我用“
INIT:
XOR BP,BP ; Set up
;stack just below I/O
;system.
MOV SS,BP
MOV SP,BIOSSEG*16
IF INTINP-1
MOV AL,0FFH ; Mask all
;interrupts.
OUTB BASE+3 <------this
ENDIF
IF INTINP
DI ; Set up <------ this
;keyboard interrupt vector.
MOV [BP+64H],KBINT
MOV [BP+66H],CS
EI <-----this
ENDIF
MOV [BP+4*38H],PRNFCB
MOV [BP+4*38H+2],CS
PUSH CS
POP DS
;
; Initialize time-of-day
;clock.
;
MOV SI,STCTAB
MOV CX,4 ;Initialize
;4 registers
UP <------this
INITSTC:
LODB
OUT STCCOM ;Select
;register to initialize
LODB
OUT STCDATA
LODB
OUT STCDATA
LOOP INITSTC
IF SERIAL
MOV CX,4
我知道上述给定的错误很明显。但是请告诉我如何修改代码。 预先感谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)