重金悬赏!!! 汇编语言高手的进来看看

来源:百度知道 编辑:UC知道 时间:2024/05/16 08:51:23
小弟跪求大侠出手相救用汇编语言编下列的问题(不要求全做,能做机题是几题)
1、设数据段BUF单元开始有10个有符号的单字节数,其中必定有负数,找出其中真值最小的数,并显示在屏幕上。(提示10个数自己可以随意指定,但其中必定有负数40分)
2、由键盘输入任意两位十进制数,然后转换成一字节BCD码→数据段BCCD单元。并显示在屏幕上。(40分)
3、有键盘输入任意组合的八个0、1字符,然后转换成等值的二进制数送数据段BEN开始的字节型单元并将数值以十进制的形式显示在屏幕上(40分)
4、由键盘输入两个3位的十进制数(一个三位十进制数以回车做为结束标志),转换成等值的二进制数→数据段的两个字型单元(40)
5、由键盘输入两位十六进制数,然后转换成等值的十进制数→屏幕显示(40)

小弟也是初来乍到,大家一起学习一下,
这是第一个程序,看不清楚的欢迎提问:
data segment
buf db 100,-120,1,2,4
count equ $-buf
data ends

code segment
assume ds:data,cs:code

start:mov ax,data
mov ds,ax

mov bl,buf
cmp bl,0
jg lab
neg bl
lab: mov cx,count-1
lea si,buf+1

next: mov al,[si]
cmp al,0
jg lab1
neg al
lab1: cmp bl,al
jb lab2
mov bl,al
lab2: inc si
loop next

mov ch,2
mov cl,4
print:ror bl,cl
mov dl,bl
and dl,0fh

add dl,30h
cmp dl,39h
jb prt
add dl,7
prt: mov ah,2
int 21h

dec ch
jnz print

exit:mov ah,4ch
int 21h

code ends
end start

这是第二个程序,(这是在输入的整数小于225情况下成立的,满足要求)
data segment
bccd db ?
data ends

code segment
assume cs:code,ds:data

start: mov ax,data