汇编高手请进。关于以下题目的代码(汇编语言的)。

A 求CL中存的整数的立方值,假设不超过16位2进制数
B 输入长度大于5小于20的字符串(必须包含至少3个大写字母),将其中的大写字母全变成小写字母
C 查找数据段中从地址SI到DI的所有数据中有没有和AL中存储相同的数,有则显示“yes”,无则显示“no”

要求写出具体代码,有分析的加分,万分感谢!!!。

B.大写字母全变成小写字母

;-------------------------------------
;宏定义1
;功能:把字符串中的大写改为小写.
;入口:字符串起始地址为STR_ADDR
; 字符串是以0结尾.
D2X MACRO STR_ADDR
LEA SI, STR_ADDR
LP1:MOV AL, [SI]
CMP AL, 0
JE FINI
CMP AL, 'A'
JB NEXT
CMP AL, 'Z'
JA NEXT
ADD AL, 20H
MOV [SI], AL
NEXT:
INC SI
JMP LP1
FINI:
ENDM
;-------------------------------------
;宏定义2
;功能:显示输出字符串.
;入口:字符串起始地址为STR_ADDR
; 字符串是以$结尾.
DISP_STR MACRO STR_ADDR
LEA DX, STR_ADDR
MOV AH, 9
INT 21H
ENDM
;-------------------------------------

;************************************************
DATA SEGMENT PARA PUBLIC 'DATA'
IN_M DB 255 ;限定输入字符个数.
N_SUM DB 0 ;实际输入的个数.
_TXT_ DB 256 DUP('$') ;输入文字区.

TIPS1 DB 7, 13, 10, 13, 10, 'Please input STR:', 13, 10, '$'
TIPS2 DB 7, 13, 10, 13, 10, 'The TXT is: ', 13, 10, '$'
TIPS3 DB 7, 13, 10, 13, 10, 'Please press any key... $'
DATA ENDS
;************************************************
CODE SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CODE, DS:DATA, ES:DATA
START:
MOV AX, DATA
MOV DS, AX
;--------------------------------
DISP_STR TIPS1 ;宏调用:显示input
LEA DX, IN_M
MOV AH, 10 ;键盘输入字符串.
INT 21H
CMP N_SUM, 0 ;键入0个字符?.
JE EXIT ;退出.
DISP_STR TIPS2 ;宏调用:显示The TXT is
LEA SI, _TXT_
MOV BL, N_SUM
MOV BH, 0
ADD SI, BX
MOV BYTE PTR [SI], 0 ;在末尾添上0
D2X _TXT_ ;宏调用:大转小.
MOV BYTE PTR [SI], '$';在末尾添上$
DISP_STR _TXT_ ;宏调用:显示转换后的字符串.
EXIT:
DISP_STR TIPS3 ;宏调用:显示press any key
MOV AH, 1
INT 21H
MOV AH, 4CH ;结束程序.
INT 21H
CODE ENDS
;************************************************
END START

运行,显示如下:

c:\masm510>asdf

Please input STR:
lskdfsdDVODPFOKPDFKPXas,a;s;;svkspd9

The TXT is:
lskdfsddvodpfokpdfkpxas,a;s;;svkspd9

Please press any key...
c:\masm510>追问

能不能给出三道题目的代码,谢谢

追答

A 求CL中存的整数的立方值,假设不超过16位2进制数

MOV AX, 1
MOV CH, 0
MUL CX
MUL CX
MUL CX

END

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-21
哎,都是挺简单的初级题目,好久没写了,不过都是以前做过的。现在都不玩汇编了,都搞c了。
想学会汇编的话,一点一点啃,想完成作业抄的话,谁做完了你就抄袭一下就行了。追问

其实我也想这样做,我们老师是给我们小组任务,每个小组题目都不一样,所以想抄袭都不行,而且就算有代码还是需要搞懂,我们老师会提问 而且管得很严。
汇编主要是根本没学,C语言还好办些至少可以看得懂...

第2个回答  2012-05-21
楼上很郁闷==
相似回答