问题 问答题 简答题

领购发票的基本程序是什么?

答案

参考答案:

依法办理税务登记的单位和个人,在领取税务登记证后,向主管税务机关申请领购发票。申请领购发票的单位和个人应当提出购票申请,提供经办人身份证明、税务登记证件或者其他有关证明,以及财务印章或者发票专用章印模,经主管税务机关审核后,发给《发票领购簿》。凭《发票领购簿》核准的种类、数量以及购票方式,向主管税务机关领购发票。

多项选择题
问答题

请编制程序,其功能是:内存中存放着由20个16位有符号整数组成的序列,求出该序列中的最小值和最大值。结果存放形式为,先按原顺序存放20个需处理的有符号整数,后跟该序列中的最小值和最大值(最小值在前,最大值在后)。
例如:
内存中有:8100H,0002H,0300H…
结果为: 8100H,0002H,0300H… (由20个16位有符号整数组成的原序列),结果的后面跟该序列中的最小值和最大值(最小值在前,最大值在后)。
部分程序已给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入SOURCE开始的内存单元中,运算结果要求从 RESULT开始存放,由过程SAVE保存到文件OUTPUT.DAT中。
请填空BEGIN和END之间已给出的源程序使其完整,空白已用横线标出,每个空白一般只需一条指令,但采用功能相当的多条指令亦可,或删除BEGIN和END之间原有的代码并自行编程来完成所要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
【试题程序】
XTRN LOAD:FAR,SAVE:FAR
NEQU 20
STAC EGMENT STACK
B128 DUP()
STAC NDS
DATA SEGMENT
SOURCE DW N DUP()RESULT DW (N+2)DUP(0)
NAME0 DB ’INPUT.DAT’,0
NAME1 DB ’OUTPUT.DAT’,0
DATA ENDSCODE SEGMENT
ASSUME CS:CODE, DS:DATA, SS:STAC
START PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
LEA DX,SOURCE ; 数据区起始地址
LEA SI,NAME0 ; 原始数据文件名
MOV CX,N*2 ; 字节数
CALL LOAD; 从’INPUT.DAT’中读取数据
; ******** BEGIN ********
LEA SI,SOURCE
LEA DI,RESULT
MOV BX, [SI] ; 第一个整数既为最大值
(1) ; 又为最小值
MOV [DI],BX
ADD SI,2
ADD DI,2
(2)
NEXT: MOV AX,[SI]
CMP AX,BX
JLE (3)
MOV; BX,AX
JMP ENDL
MIN: CMP AX,DX
(4) ENDL
MOV DX, AX
ENDL: MOV [DI], AX
ADD SI,2
ADD DI,2
LOOP NEXT
(5)
ADD DI,2
(6)
; ******** END ********
LEA DX,RESULT ; 结果数据区首址
LEA SI,NAME1 ; 结果文件名
NOV CX,(2+N)*2 ; 结果字节数
CALL SAVE; 保存结果到文件
RET
START ENDP
CODE ENDS
END START