汇编实验(三)
来源:互联网 发布:广西广电网络初装费用 编辑:程序博客网 时间:2024/05/21 03:56
<span style="font-family: Arial, Helvetica, sans-serif;"><循环程序设计></span>
1.如何输出自定义变量
2.21H中断 1号输入 2号输出 (一个字符)
data segmentman db 0woman db 0COUNT equ 10disp db 0dh, 0ah, 'man or woman 1/0?', '$'disp1 db 0dh, 0ah, 'man:', '$'disp2 db 0dh, 0ah, 'woman:', '$'data endscode segmentassume cs:code, ds:data start:mov ax, data mov ds, ax mov cx, COUNTinput:mov dx, offset disp mov ah, 9int 21h mov ah, 1int 21h cmp al, '1'jz mancountcmp al, '0'jz womancountjmp input mancount:inc man jmp loopnext womancount:inc womanloopnext:loop inputmov dx, offset disp1mov ah, 9int 21h mov bx, offset man mov dl, [bx]cmp dl, 10jb hehe add dl, 7hehe:add dl, 30hmov ah, 2 int 21h mov dx, offset disp2mov ah, 9int 21hmov bx, offset womanmov dl, [bx]cmp dl, 10jb haha add dl, 7haha:add dl, 30h mov ah, 2 int 21h mov ah,1int 21hmov ah, 4ch int 21h code ends end start
/*矩阵相乘 * */assume cs:code, ds:data, ss:stackdata segments1 db 255, 2, 26, 251, 2, 1, 3, 4, 6, 5, 8, 9, 8, 2, 5, 7s2 db 224, 2, 7, 4re dw 4 dup(0)temp dw 0 temp1 dw 0 data endsstack segmentdw 15 dup(0)stack ends code segmentstart:mov ax, datamov ds, axmov ax, stackmov ss, ax mov sp, 0010h lea si, s1lea di, s2 lea bx, re mov dx, 0 mov cx, 4outer:push cx mov cx, 4 inner:mov al, [si]mul ds:byte ptr[di] ;结果存入axadd dx, ax inc siinc di loop innermov ds:[bx], dx mov di, 16 mov dx, 0 inc bxinc bx pop cx loop outer ;showmov cx, 4 lea si, re show:mov bx, [si]call putoutHexinc si inc si push dx push ax mov dl, 0dhmov ah, 2int 21h mov dl, 0ahmov ah, 2int 21h pop axpop dxloop show mov ax, 4c00hint 21h putoutHex proc push cxmov temp, bxmov temp1, bx mov cl, 8shr temp, cl mov bx, tempcall main1 and temp, 00ffhmov bx, temp1call main1pop cx retmain1 procmov al, blmov cl, 4shr al, clcmp al, 10 jb kk add al, 7kk:mov dl, al cmp dl, 0 je kk2 add dl, 30h mov ah, 2 int 21h and bl, 0fh kk2:cmp bl, 10 jb kk1 add bl, 7kk1:mov dl, bladd dl, 30h mov ah, 2 int 21h ret main1 endp putoutHex endp code endsend start
考题:
/* 将字符串中的小写字母转换为大写字母 * * */assume cs:code, ds:datadata segmentpkey db 'please input strings ','$'InStr db 20 dup(0)temp dw 0data endscode segmentstart:mov ax, datamov ds, axmov dx, offset pkeymov ah, 9int 21hpush dx push axmov dl, 0ah;回车换行mov ah, 2 int 21hmov dl, 0dhmov ah, 2 int 21hpop axpop dxmov cx, 0lea si, InStrloop1:mov ah, 1int 21hcmp al, '$'je overmov byte ptr[si], alinc siinc cxjmp loop1over:push dx push axmov dl, 0ah;回车换行mov ah, 2 int 21hmov dl, 0dhmov ah, 2 int 21hpop axpop dxlea si, InStrcompL:mov bl, [si]cmp bl, 'a'jb noLcmp bl, 'z'ja noLsub bl, 32mov dl, blmov ah, 2int 21hnoL:inc siloop compLmov ah, 1int 21hmov ah, 4chint 21hcode endsend start
0 0
- 汇编实验(三)
- 汇编实验(一)
- 汇编实验(二)
- 汇编实验(四)
- 汇编(三)
- 汇编(三)
- 汇编实验
- 汇编 实验
- 汇编实验
- 汇编实验
- 浅谈汇编,认识汇编(三)
- FZU汇编作业 实验(四)
- FZU汇编作业 实验(五)
- 汇编实验(持续更新修改)
- 神奇的汇编(三)
- 汇编学习笔记(三)
- 汇编(三)
- 《数据结构》实验三:栈和队列实验 (实验报告)
- Unity通过Php访问MySql
- 背包问题--求第K大值
- MySQL错误积累-持续更新
- 反编译apk
- Android之创建选项菜单
- 汇编实验(三)
- Stay hungry, stay foolish
- Hadoop读书笔记(十二)MapReduce自定义排序
- 答辩周年记------与刚入职场/即将答辩的程序猿们共勉
- java实现N皇后递归算法
- iOS开发:数据存储之plist文件操作
- CMM词法分析(C++实现)
- 利用Gson转换Json实例
- java_JDK安装与环境配置