求汇编语言高手帮忙编个程序

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-07
我是新手,求高手帮忙!编写一个汇编语言程序;

data segment
str db 10
db "fgdsgfgj",0dh,0ah,0
num db 5
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov al,num
cmp al,[str]
ja exit
mov al,[str]
sub al,num
mov cl,al
mov ch,0
mov BX,offset str
rot: add bx,1 ;//字符串从str+1开始
add bx,str //指向串的最后一个单元
mov al,[bx-1]
mov [bx],al ;字符串后移
loop rot
exit: mov ax,4c00h
int 21h
code ends
end start

参考一下吧
http://topic.csdn.net/t/20050425/08/3963570.html
http://bbs.chinaunix.net/viewthread.php?tid=298540

;汇编,输入十进制,输出十六进制
code segment
assume cs:code,ds:code
org 100h
start:
push cs
pop ds
Again:lea dx,Tips1
mov ah,9
int 21h ;显示提示
xor bp,bp ;BP清0
mov cx,5
@In:mov ah,0
int 16h ;无回显输入
cmp al,1bh ;Esc退出程序
jz quit
cmp al,0dh
jz Show ;回车结束输入
cmp al,'0'
jb @In
cmp al,'9';数据校验
ja @In
mov ah,0eh
int 10h ;显示有效输入
and al,0fh
shl bp,1
mov bx,bp
shl bp,1
shl bp,1
add bp,bx
mov ah,0
add bp,ax ;BP*10+AX
loop @In

Show:lea dx,Tips2
mov ah,9
int 21h ;显示结果
mov cx,4
lop:push cx
mov cl,4
rol bp,cl
mov ax,bp
and al,0fh
or al,30h
cmp al,'9'
jbe Q1
add al,7
Q1:mov ah,0eh
int 10h ;化为十六进制显示
pop cx
loop lop
mov al,'H'
int 10h
jmp Again
quit:
mov ah,0eh
mov al,'O'
int 10h
mov al,'K'
int 10h
mov ah,0
int 16h
mov ah,4ch
int 21h
Tips1 db 0dh,0ah,09,'Input(0-65535D),Esc to Quit: $'
Tips2 db 0dh,0ah,09,'Hex: $'
code ends
end start

fdgaergadfgzaergaaadfgadffffgaadf

  • 请高手帮忙用汇编语言写个驱动可控硅的程序!或高速我怎么驱动!
    答:可控硅有过零检测和不过零检测两种,如果你不需要过零检测就用不过零检测的那一种可控硅就行;如果你是把触发控制放在主循环里面的话,肯定每一次循环回去都要触发一下;还有如果你要用脉冲来触发的话,触发电平的时间至少要16个us,也就是说你要加16个NOP指令。
  • 用汇编语言编个程序,要求如下:
    答:MAIN PROC FAR ;主程序入口 mov ax, dseg mov ds, ax mov es,ax lea dx,msgi;显示信息,提示输入一串字符 mov ah,9 int 21h lea dx,buf;输入字符串 mov ah,0ah int 21h lea si,buf mov cl,[si+1];输入字符实际个数存入CX中 mov ch,0 lea di,table;输入字符起始地址存入DI mov...
  • 请哪位高手帮忙用汇编语言编写一段程序,求三个带符号字节数据中的最大...
    答:n1 db 1,99,-2 max db 0 ..mov bx,offset n1 mov al,[bx]cmp al,[bx+1]jg s1 mov al,[bx+1]s1:cmp al,[bx+2]jg s2 mov al,[bx+2]s2:mov max,al
  • 急求一个汇编语言程序,电话号码本!!!~
    答:/*编程建立一通讯簿,存放有类别、姓名、电话号码、Email 住址,然后对通信簿进行查找、添加、修改及删除。*/ include<stdio.h> include <string.h> struct person { char name[8];char tel[15];char email[50];/*增加email*/ char addr[50];char classes[20]; /*friends朋友,家人family,同事...
  • 汇编语言高手请进
    答:ORG 00H ;定义程序存储器地址00H START: NOP ;空指令(MCU上电时不稳定,一般会在复位地址 ;加NOP指令,防止程序跑非)MOV R3,#3 ;LOP2: MOV R4,#8 MOV R2,#0 LOP1: MOV P1,#0FFH ;设置P1口为全高(P1口应该是与LED的阳极相连 ;的)MOV DPTR,#TABA ;<查表(R2为相对偏...
  • 汇编语言的高手进~!
    答:lea si,Buffer[1] ;实际输入的字符个数地址 lodsb ;读入实际输入的字符个数 test al,0ffh jz Exit_Proc ;若直接回车,未输入任何字符,则结束程序,返回操作系统 xor ah,ah ;累加器高位字节清零 mov cx,ax Encoding: lodsb ;读入一个字符 mov ah,al and ah,0dfh ;假定这个字符为...
  • 汇编语言
    答:; 本程序在MASMPlus 1.2集成环境下通过编译,经过调试,运行正确。Code Segment Assume CS:Code,DS:Code ; --- ; 功能:显示指定地址(Str_Addr)的字符串 ; 入口:; Str_Addr=字符串地址(要求在数据段); 用法: Output Str_Addr ; 用法举例:Output PromptStr Output MACRO Str_Addr...
  • 高分悬赏!高手给我写汇编语言实验啊?
    答:jg exit ;输入字母则退出主程序 add ebx , eax dec esi cmp esi , 0 jnz rotate mov dl , ' 'mov ah , 02 int 21h and ebx , 000000ffh mov ecx , ebx xor edx , edx xor eax , eax call fibo ;递归调用 mov ebx , edx xor eax , eax mov si , 8 mov oper0 , ...
  • 汇编语言编写的绘图程序
    答:下面是段参考资料,其它功能因时间有限 略:code segment assume cs:code start: mov ax,0012h ;置屏幕方式为vga 640*480模式 int 10h mov cx,300 ;横坐标 mov dx,240 ;纵坐标 write: mov al,0ah ;设置颜色 mov ah,0ch ;设置画点 int 10h mov ah,0 ;读键值 int 16h...
  • 汇编语言编程
    答:CALL DISPLAY ;显求3-18岁共花费的钱 MOV AH,4CH INT 21H ;子程序名:DISPLAY ;子程序功能:十进制显示 ;入口参数:DX,AX ;出口参数:;使用寄存器:DI,BX,CX,DX DISPLAY PROC MOV DI,OFFSET STR1 ;将DI指向BUF的下一单元 MOV BX,10 ;准备除以10 MOV CX,0 ;准备...