导航:首页 > 编程语言 > 100条以上的汇编语言程序

100条以上的汇编语言程序

发布时间:2023-10-19 08:29:28

❶ 100行的汇编语言程序

dat segment
data db 10 p(0)
input db 'input:$'
output db 'output:$'
enter db 0dh,0ah,'$'
dat ends

cod segment
assume ds:dat,cs:cod
;-----------------------主程序
start:
mov ax,dat
mov ds,ax ;数据段寄存器赋值

lea si,data ;SI指向DATA数组首单元
mov cl,4
ppp:
mov bx,0 ;BX清零

lea dx,input ;这三行调用INT 21H中断例程的9号功能输出DS:DX指向的字符串,以'$'结尾
mov ah,9 ;以下代码若有类似的三句,实现功能类似
int 21h ;显示输入提示

;-----------------------开始输入十六进制数
get:
mov ah,1 ;这两行调用INT 21H中断例程1号功能,等待用户输入一个字符,保存入AL中
int 21h

;以下6对代码依次比较输入字符,并跳转到相应操作
cmp al,'*'
jz kkk ;输入'*'号,退出程序

cmp al,0dh ;0DH是回车键对应的字符
jz mess ;输入回车,跳出get循环(get循环:实现输入十六进制数并保存到BX的功能)

cmp al,30h ;这4行判断是否是'0'~'9'
jb get

cmp al,39h
jbe num

cmp al,'A' ;这4行判断是否是'A'~'F'
jb get

cmp al,'F'
jbe big

cmp al,'a' ;这4行判断是否是'a'~'f'
jb get

cmp al,'f'
jbe big

jmp get

num: ;对数字进行处理
and al,0fh ;al高4位清零,保留低4位
jmp next

big: ;对大写字母或者小写字母进行处理
sub al,7
and al,0fh

next:
shl bx,cl ;BX左移4位
add bl,al ;将数字保存到BL的低4位中
jmp get
;-----------------------
mess:
lea dx,enter
mov ah,9
int 21h ;回车、换行

lea dx,output
mov ah,9
int 21h ;显示输出提示

mov dx,0
mov ax,bx
mov bx,10 ;进制数
again:
call buf
cmp ax,0 ;商如果为0,表示该十六进制数对应的十进制数的每一个数位的值都存入了DATA数组
jnz again

mov ah,2 ;INT 21H的2号功能:将DL中保存的ASCII码对应的字符输出
ttt:
dec si
mov dl,[si] ;取数据
int 21h ;显示

cmp si,0
jnz ttt ;判断是否取完DATA数组的所有元素,来控制循环

lea dx,enter
mov ah,9
int 21h ;回车、换行

jmp ppp ;开始下一轮输入、转换和输出
kkk:
mov ah,4ch ;退出程序的操作
int 21h
;--------------------子程序
;传入参数:BX,进制数10;DX、AX,表示一个32位16进制数
;返回值:AX
;功能:
;1. 将DX、AX表示的16进制数除以10,得到余数(余数在0~9之间,即对应十进制无符号数的个位数字)
;2. 将其转换为对应字符的ASCII码(即1转换为'1'),并保存到SI指向的DATA数组元素的位置
;3. SI指向DATA数组的下一个元素
buf proc
div bx
add dl,30h
mov [si],dl
mov dl,0
inc si
ret
buf endp

cod ends
end start

;总结:这段程序实现的功能
;1. 十六进制输入一个数,输入回车表示输入结束,输入'*'表示退出程序,保存到寄存器中
;2. 十六进制数转换为十进制无符号数,使用了类似于栈的操作的方法
;3. 十进制无符号数转换为对应字符的ASCII码(2和3由子程序buf完成)
;4. ASCII码对应字符的输出的功能

❷ 100条汇编语言编一个程序

请到我的博客随便找一个吧!

阅读全文

与100条以上的汇编语言程序相关的资料

热点内容
苹果升级系统白屏 浏览:136
三菱gxplc编程软件如何使用 浏览:710
海康威视手机app怎么看不了 浏览:482
wordpress下载中心插件 浏览:402
微信限制字数是多少 浏览:20
策划输出主要从哪些文件来 浏览:174
网络营销找什么工作 浏览:372
tcl匹配文件名的正则表达式 浏览:461
音频文件数据量为何8 浏览:534
有哪些分享学习的网站 浏览:174
小程序文件发到微信电脑如何打开 浏览:265
四星五星做号工具 浏览:920
qq邮箱怎么发送视频文件 浏览:453
能免费开店的网站有哪些 浏览:548
中国网络营销发展史 浏览:828
违法红头文件有哪些 浏览:43
浏览器单文件版 浏览:982
腾讯视频离线缓存文件 浏览:944
如何让教育过好网络关 浏览:906
新版本vk10001p 浏览:13

友情链接