intel汇编语言课程设计

哪位高手能给发一个intel汇编语言课程设计的题目还有代码呀谢谢啦比较急呀... 哪位高手能给发一个intel汇编语言课程设计 的 题目还有代码呀 谢谢啦 比较急呀 展开
 我来答
汤旺河边
2009-06-23 · TA获得超过2.9万个赞
知道大有可为答主
回答量:2675
采纳率:0%
帮助的人:2972万
展开全部
intel汇编语言课程设计:编密码
要求: 按照以下规律编密码:字母A变为E,a变为e,即变成其他的第一4个字母,W变A,X变B,Y变C,Z变为D,非字母不变。如“CHINA”变为“GLMRE!”

; 本程序通过编译,运行正确
Code Segment
Assume CS:Code,DS:Code
; -----------------------------------------
; 功能:显示指定地址(Str_Addr)的字符串
; 入口:
; Str_Addr=字符串地址(要求在数据段)

; 用法: Output Str_Addr
; 用法举例:Output PromptStr
Output MACRO Str_Addr
lea dx,Str_Addr
mov ah,9
int 21h
EndM
; -----------------------------------------
Prompt_Str db 'Please input a string: $'
Prompt_Str1 db 13,10,'The encoded string: $'
Press_Key db 13,10,13,10,'Press any key to exit...$'
Start: push cs
pop ds
push cs
pop es
Output Prompt_Str ;提示输入字符串
lea dx,Buffer ;字符串缓冲区地址
mov ah,0ah ;dos功能调用0ah号功能:输入字符串
int 21h
lea si,Buffer[1] ;实际输入的字符个数地址
lodsb ;读入实际输入的字符个数
test al,0ffh
jz Exit_Proc ;若直接回车,未输入任何字符,则结束程序,返回操作系统
xor ah,ah ;累加器高位字节清零
mov cx,ax
@@Encoding: lodsb ;读入一个字符
mov ah,al
and ah,0dfh ;假定这个字符为字母,将小写变为大写
cmp ah,'A'
jb @@Next_Chr ;不是字母,不加密
cmp ah,'Z'
ja @@Next_Chr ;不是字母,不加密
add al,4 ;加密
mov ah,al
and ah,0dfh
cmp ah,'Z' ;加密后的字符超出字母范围?
jbe $+4 ;否,转去将加密后的字符写回原位置
sub al,26 ;调整
mov [si-1],al ;加密后的字符写回原位置
@@Next_Chr: loop @@Encoding
mov byte ptr [si],'$' ;将这个字符串以$符结尾,准备用dos功能调用9号功能显示这个字符串
Output Prompt_Str1 ;提示显示加密后的字符串
Output Buffer[2] ;显示加密后的字符串
Output Press_Key
mov ah,1
int 21h
Exit_Proc: mov ah,4ch ;结束程序
int 21h
Buffer db 255,? ;字符串缓冲区
Code ENDS
END Start ;编译到此结束
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式