资源描述:
《按如下要求设计程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、按如下要求设计程序(可在课后完成):1. 试按下列给定的公式编写程序: (3*X1-(X2*X3+7*X4-200))/X3 其中,X1, X2, X3, X4为16位带符号数的字变量。计算结果的商存在AX中,余数存放在DX中。源程序:DATA SEGMENTVARX DW 123H ;设置变量x1VARY DW 456H ;设置变量x2 VARZ DW 789H ;设置变量x3 VARW DW 0A53H
2、 ;设置变量x4FUN DW ?DATA ENDSSTACK1 SEGMENT PARA STACK DW 200H DUP(0)STACK1 ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1START: MOV AX,DATA MOV DS,AX MOV AX,VARY IMUL VARZ ;x2*x3 CW
3、D ;符号扩展,AX中符号扩展到DX中MOV DI,AXMOV SI,DX MOV BX,VARW MOV BX,CX SAL BX,1 SAL BX,1 SAL BX,1 SUB BX,CX ;7*x4 SUB BX,200 ;7*x4-200CWD ADC AX,D
4、IADD DX,SI ;x2*x3+7*x4-200MOV DI,AXMOV SI,DX MOV BX,VARX MOV CX,BX SAL BX,1 SAL BX,1 SUB BX,CX ;3*x1 CWDSUB AX,DISUB DX,SI ;3*x1-(x2*x3+7*x4-200) IDIV V
5、ARZ ;3*x1-(x2*x3+7*x4-200)/x3 MOV AH,4CH INT 21HCODE ENDS END START2、试编制一个程序,统计DA_WORD数据区中正数、0、负数的个数。数据定义如下:DA_WORD DW -1, 3, 5, 0, -5, -7, 4, 0, -8, …COUNT EQU $-DA_WORDNUM DB 0 ;存放正数
6、的个数 DB 0 ;存放0的个数 DB 0 ;存放负数的个数源程序:DATA SEGMENT ORG 1000H DA_WORD DW -1,3,5,0,-5,-7,4,0,-8 COUNT EQU $-DA_WORD ORG 1020H NUM DB 0 ;存放正数的个数ZE DB 0 ;存放0的个数PLUS DB 0 ;存放负数的个数DATA E
7、NDSSTACK1 SEGMENT PARA STACK DW 100 DUP(0) STACK1 ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX MOV AX,COUNT MOV CL,1 SHR AX,CL
8、 MOV CX,AX MOV SI,OFFSET DA_WORD ;获取DA_WORD的偏移地址EXCHANG: MOV AX,[SI] CMP AX,0 ;ax里的数据减去0 JNZ NOZ ;ZF不为1时跳转 INC [ZE] ;如果ZF=1时,ZE+1