永发信息网

汇编程序:1、编程计算S=1+3+5+......+99,并以十六进制形式显示S的值

答案:2  悬赏:0  手机版
解决时间 2021-11-17 20:29
汇编程序:1、编程计算S=1+3+5+......+99,并以十六进制形式显示S的值
最佳答案
;1+3+....+99=(1+99)*50/2=9C4
CODE SEGMENT
ASSUME CS:CODE
START: MOV CX,99
MOV AX,0
LOP: ADD AX,CX
SUB CX,2
JNS LOP
MOV BX,AX
CALL DISPLAY
MOV AH,4CH
INT 21H
;入口参数:BX
;功能:显示字数据
DISPLAY PROC
PUSH CX
MOV CH,4
MOV CL,4
LOP1: ROL BX,CL
MOV DL,BL
AND DL,0FH
ADD DL,30H
CMP DL,3AH
JB NEXT
ADD DL,7
NEXT: MOV AH,2
INT 21H
DEC CH
CMP CH,0
JNZ LOP1
POP CX
RET
DISPLAY ENDP
CODE ENDS
END START
全部回答
.386
STACK SEGMENT USE16 STACK
DB 2000 DUP(0)
STACK ENDS

DATA SEGMENT USE16
NUM DD 99
OUTPUT DB 0DH,0AH,'SUM 0F 1 .. 8000 IS : '
RESULT DB 16 DUP (' '),'$'
DATA ENDS

CODE SEGMENT USE16
ASSUME CS:CODE,DS:DATA,SS:STACK
START:
MOV AX, DATA
MOV DS, AX
MOV EBX, NUM
PUSH EBX
CALL SUM_P ;计算1....8000的和 结果在EAX中
CALL F2T10 ; (EAX) 转化为十进制可显示字符放到 result 缓冲区中
LEA DX, OUTPUT
MOV AH, 9
INT 21H
EXIT: MOV AH,4CH
INT 21H

SUM_P PROC
MOV BP,SP
MOV EBX, [BP+2]
MOV EAX,0
LP: ADD EAX,EBX
DEC EBX
cmp EbX, 0
JNZ LP
RET 4
SUM_P ENDP

; 将 (EAX) 中的内容,转换成 十进制数串
F2T10 PROC
MOV EBX, 10
LEA SI, RESULT+15
L1: MOV EDX, 0
DIV EBX
ADD DL,30H
MOV [SI],DL
DEC SI
CMP EAX, 0
JZ F_EXIT
JMP L1
F_EXIT:
RET
F2T10 ENDP

CODE ENDS
END START
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我进了一车煤炭不包含运费,带票850求计划出
弋阳县漆工中学地址有知道的么?有点事想过去
在引用归结原理时,化为S子句集是要处理这样的
喝普洱茶好还是喝铁观音好?
睡觉时为什么经常扭伤勃子
在java中,例如import java.awt.*;import jav
为什么河北比山西热
电影寒战好看吗?
4.2X101-4.2怎么简便
UG8.5曲面区域加工方式显示选定的方法在shops
“邓云”的繁体字写法
畅捷通t12.1是哪个级别的用友软件
大家wii手柄电池能用多久
我们11点到福成机场,还有机场大巴坐吗?住哪
用什么方法能快速把淹的变黑的鸭蛋弄回原色
推荐资讯
“你不曾真的离去,你始终在我心底。 我对你仍
中华H3手动豪华型1.5L,这车怎么样?值得入手
女29岁 属免和男31岁属牛的结婚哪个月份好?
沈阳铁路局客票代售点地址在哪,我要去那里办
4.482÷0.27竖式怎么写
我知道满族的风俗习惯(简写)
中国邮政(原平市邮政局)地址好找么,我有些事
这个英文是什么意思
帮得佳厨房油污清洁剂怎么喷不出来
我家蜥蜴越狱了.怎么办
戴尔780系列
CM半永久纹绣培训馆地址在什么地方,我要处理
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?