- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编考试大题
汇编大题集锦
;1.冒泡排序
data segment
data_ary db 5,9,11,2,4,3
data ends
code segment
assume ds:data, cs:code
start:
mov ax,data
mov ds,ax
mov cx,5
out_next:
lea si,data_ary
push cx
in_next:
mov al,[si]
cmp al,[si+1]
jle no_change
change:
xchg al,[si+1]
xchg al,[si]
no_change:
inc si
cmp si,4
jbe in_next
pop cx
loop out_next
mov ah,4ch
int 21h
code ends
end start
;2.查表法获取数据(对数、七段显示码)
data segment
X db 5
Y dw ?
tab dw 0,3010,4711,6021,6990,7782,8451,9031,9542,10000
data ends
code segment
assume cs:code ,ds:data
start:
mov ax,data
mov ds,ax
mov al,X
XOR AH,AH
dec ax ;减1得实际的表项号,tab从0开始
add ax,ax ;转换成字
mov bx,ax
mov ax,tab[bx]
mov Y,ax
mov ah,4ch
int 21h
code ends
end start
;或者这样
data segment
X db 5
Y dw ?
tab dw 0,3010,4711,6021,6990,7782,8451,9031,9542,10000
data ends
code segment
assume cs:code ,ds:data
start:
mov ax,data
mov ds,ax
mov bx,offset tab
mov al,X
xlat
mov ax,tab[bx]
mov Y,ax
mov ah,4ch
int 21h
code ends
end start
;3.地址表实现多分支(命令行菜单)
data segment
table dw m1,m2,m3
menu db 0dh,0ah,1 menu1,0dh,0ah
db 2 menu2,0dh,0ah
db 3 menu3,0dh,0ah,$
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
next:
lea dx,menu
mov ah,09h
int 21h ;显示菜单
mov ah,1
int 21h ;系统01号功能,回显,接收键盘数据,保存于al
sub al,31h ;al为选择菜单号,减30转换为数字,再减一说明从0号地址单元开始
xor ah,ah
add ax,ax ;计算入口地址表内地址,相与转换为字,因为m为dw
mov bx,ax ;存入基址寄存器bx
jmp table[bx] ;跳到m1,m2,m3
ok:
jmp next
m1:
jmp ok
m2:
jmp ok
m3:
mov ah,4ch ;系统中断结束
int 21h
code ends
end start
;4.求从单元0A000:0000H开始的20个字单元校验和
data segment
sum dw ?
data ends
code segment
assume cs:code
start:
mov ax,0a000h ;段值
mov ds,ax
mov si,0000h ;偏移值
mov cx,20 ;计数
xor ax,ax
sum1:
add
文档评论(0)