问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

高手帮忙写一个简单的汇编语言程序【在线等】

发布网友 发布时间:2022-05-15 19:52

我来回答

3个回答

热心网友 时间:2023-08-11 20:15

DATA SEGMENT
K DB 0D9H,07H,8BH,0C5H,0EBH,04H,9DH,0F9H,1H,2H,0CH,3H,0BH,4H,5H,6H,7H,9H,8H,0AH
DATA ENDS ;数据段
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS, AX
LEA SI, K ;源地址
MOV CX,20
MOV BH, [SI] ;最大最小都初始化为第一个数
MOV BL, BH
INC SI
A1: LODSB
CMP AL, BH ;比较第二和第二个以后的数
JLE A2 ;小于等于的话跳到A2
MOV BH, AL ;大于的话更新最大值
JMP A3
A2: CMP AL, BL ;和目前最小值比较
JGE A3 ;高的话跳到A3
MOV BL, AL ;更新最小值
A3: LOOP A1 ;循环
CALL DISP
MOV BL,BH
CALL DISP
MOV AX, 4C00H
INT 21H
DISP PROC NEAR
mov ch,2
rotate:
mov cl,4
rol bl,cl
mov al,bl
and al,0fh
add al,30h
cmp al,3ah
jl printit
add al,7h
printit:
mov dl,al
mov ah,2
int 21h
dec ch
jnz rotate
RET
DISP ENDP
CODE ENDS
END START

热心网友 时间:2023-08-11 20:15

; 本程序通过编译,运行正确。
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
; -----------------------------------------
; 功能:输出回车换行
enter_CTLF proc Near
push ax
push dx
mov ah,02h
mov dl,0dh
int 21h
mov dl,0ah
int 21h
pop dx
pop ax
ret
enter_CTLF endp
; -----------------------------------------
; 功能:把AX中的二进制有、无符号数转换成显式的十进制ASCII码,并送显示屏显示
; 入口:AX=二进制数
; Signed=是否有符号数。'y'=有符号数,'n'=无符号数
; 出口:在当前光标位置显示转换后的ASCII码数字
Dec_ASCII Proc Near
push dx
push bx
push di
.IF Signed == 'y'
mov @@Carry_Yes,'+'
test ax,8000h
jz $+9
mov @@Carry_Yes,'-'
neg ax
.Endif
mov bx,10
lea di,@@Temp_Save[6]
mov byte ptr [di],'$'
dec di
cld
@@Divide: xor dx,dx
div bx
or dl,30h
mov [di],dl
dec di
test ax,0ffffh
jnz @@Divide
.IF Signed == 'y'
cmp @@Carry_Yes,'-'
jnz $+6
mov byte ptr [di],'-'
dec di
.Endif
inc di
push di
pop dx
mov ah,9
int 21h
pop di
pop bx
pop dx
ret
@@Temp_Save db 7 p(?)
@@Carry_Yes db '+'
Dec_ASCII EndP
; -----------------------------------------
Signed db 'y' ;是否有符号数。'y'=有符号数,'n'=无符号数
K db 12,26,87,253,198,113,99,75,61,51,-31,69,15,-63,-89,58,79,87,41,123
Count equ $-K ;数组元素个数
prompt_Max db 'the Maximum: $'
prompt_Min db 'the Minimum: $'

Start: push cs
pop ds
push cs
pop es ;使数据段、附加段与代码段同段

; 找出其中的最大值及最小值
cld
lea si,K ;数组变量地址
lodsb ;将第一个元素读入AL
mov ah,al ;AH=最大值,AL=最小值
mov cx,Count-1
Compare: cmp al,[si] ;当前最小值与当前元素比较
jle $+4 ;若小于或等于,不更新最小值,转去与最大值比较
mov al,[si] ;当前最小值大于当前元素,装入新的最小值
cmp ah,[si] ;当前最大值与当前元素比较
jge $+4 ;若大于或等于,不更新最大值
mov ah,[si] ;当前最大值小于当前元素,装入新的最大值
inc si ;增1,准备处理下一个字母
loop Compare
xchg ah,al
push ax
Output prompt_Max ;提示显示最大数
pop ax
push ax
cbw
call Dec_ASCII ;显示最大数
call enter_CTLF ;输出一个回车、换行
Output prompt_Min ;提示显示最小数
pop ax
xchg ah,al
cbw
call Dec_ASCII ;显示最小数
Exit_Proc: mov ah,4ch ;结束程序
int 21h
Code ENDS
END Start ;编译到此结束

热心网友 时间:2023-08-11 20:16

DATA SEGMENT
NUMA DB 0D9H,07H,8BH,0C5H,0EBH,04H,9DH,0F9H
NUMB DB ?,?
Max db 'Min: '
X db '00H',0dh,0ah
Min db 'Max: '
Y db '00H$'
DATA ENDS ;数据段
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS, AX
LEA SI, NUMA ;源地址
LEA DI, NUMB ;目标地址
MOV CX, 7
MOV BH, [SI] ;最大最小都初始化为第一个数
MOV BL, BH
INC SI
A1: LODSB
CMP AL, BH ;比较第二和第二个以后的数
JBE A2 ;小于等于的话跳到A2
MOV BH, AL ;大于的话更新最大值
JMP A3
A2: CMP AL, BL ;和目前最小值比较
JAE A3 ;高的话跳到A3
MOV BL, AL ;更新最小值
A3: LOOP A1 ;循环
MOV [DI], BX ; 把最大最小放到目标数据区
lea di,X
mov al,NUMB
call BintoHex;转换
lea di,Y
mov al,NUMB+1
call BintoHex
lea dx,Max;显示输出
mov ah,9
int 21h
mov ah,0
int 16h
MOV AX, 4C00H
INT 21H

BintoHex:
mov ah,al
mov cl,4
shr al,cl
and al,0fh
or al,'0'
cmp al,'9'
jbe Q1
add al,7
Q1:mov [di],al
inc di
mov al,ah
and al,0fh
or al,'0'
cmp al,'9'
jbe Q2
add al,7
Q2:mov [di],al
ret

CODE ENDS
END START
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
桑葚干直接吃还是泡水喝比较好桑葚干直接吃补肾吗 桑葚干泡水吃好还是干吃好 益智仁脑素神经酸片的功效与作用有哪些 黄冈师范学院师范专业有哪些 语文教育专业考研方向分析 黄冈师范学院语文教育专科毕业能拿教师资格证吗 php保留数字小数点后两位的方法 梦见被后咬 梦见母亲给赔鸡钱补了十二元的预兆 梦见门掉下来要二十五元修理费 完成一个完整的简单汇编语言程序 春夏季节特别适合慢跑,适合春季和夏季慢跑时穿着的时尚单品有哪些? 谁能帮我用汇编语言写一个简单的程序 求一个简单的汇编语言程序 求帮忙解释一段简单的汇编代码~ 求一段简单的MASM32的汇编代码 在线等。求简单汇编代码。 简单的汇编代码 高手请教..通达信软件选股公式;要求底部巨阳第二天跳空高开不补缺口强势横盘的股票。 下跌中股票一天放量巨阳 几次都没有涨停的股票一根巨阳好吗? 股票中,一根巨阳头顶光,别人抢盘我清仓之含义? 在股票K线图中,一根巨阳头顶光,别人抢盘我清仓之含义? 股票K线图中,一根巨阳头顶光,别人抢盘我清仓之含义? 股票中,什么叫巨阳入海,放心购买? 篮球比赛中弃权算多少比分 篮球比赛,其中一队被取消资格能否改变他与其他队的胜负关系? 在国际篮球规则中若一方中途退赛则比赛如何判罚? 以前微信绑定银行卡,以前的不用了,请问怎么才能解除绑定? 篮球比赛开始前,两队都弃权,怎么算? 去滑雪之前需要购置一套滑雪服,怎样选购适合自己的滑雪服? 一段简单的汇编代码?(反汇编后不一样啊) 海绵挤水拖把每拖地一下就有一个痕迹,怎么办? oppo电话手环手表多少钱 dido-Y1S心电智能手环多少钱? win10系统蓝屏, 自动修复也不行。 出现 CRITICAL_SERVICE_FAILED 怎 win10系统蓝屏,修复也没用,提示错误critical service failed 关于JAVA学习的建议,我在上Java的业余班,平时工作忙没时间学习。想转岗去研发中心 段方升是将军吗 段方升是开国什么将军? 八路军段方升的夫人是谁一 我的timberland靴子上发霉了...全是霉斑,怎么洗掉啊? 如何学会在社会中赚钱? 怎样才能在这个社会上赚钱? 在这现实社会怎么样才能快速赚钱? 怎么才可以赚到钱,在现在的社会? 这个社会上如何赚钱是最容易的办法呢? 当今社会,怎样才能赚到钱? iQOOz1为什么打电话有回声? 微信视频号是否可以迁移到别的下面?