77范文网 - 专业文章范例文档资料分享平台

汇编程序汇总

来源:网络收集 时间:2019-03-11 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

设平面上一点p的直角坐标为(x,y),x,y为字符号数,试编制若P落在第i象限内,则令k=i;若P落在坐标轴上,则令k=0的程序。

stack segment stack'stack' dw 32 dup(0) stack ends data segment x dw 0 y dw 30 k db 0 data ends code segment begin proc far

assume ss:stack,cs:code,ds:data push ds sub ax,ax push ax mov ax,data mov ds,ax

mov ax,x jz x0y0 mov ax,y jz x0y0

mov ax,x js x1 mov ax,y js y1 mov k,1 jmp endd y1: mov k,4 jmp endd x1: mov ax,y js y2 mov k,2 jmp endd y2: mov k,3 jmp endd x0y0: mov k,0 jmp endd endd: mov dl,k add dl,30h mov ah,2 int 21h ret begin endp code ends

end begin

编写程序,将字节变量BVAR中的无符号二进制数(0~0FFH)转换为BCD数,在屏幕上显示结果。

stack segment stack ‘stack’ dw 32 dup(0) stack ends data segment BVAR DB 99H

OBUF DB 4 DUP(0) data ends code segment begin proc far

assume ss: stack, cs: code, ds: data

push ds sub ax, ax push ax

mov ax, data mov ds, ax

MOV AL ,BVAR MOV AH, 0 MOV DL, 100 DIV DL

ADD AL, 30H Mov obuf,al MOV AL,AH AAM

ADD AX,3030H MOV OBUF+1,AH MOV OBUF+2,AL MOV OBUF+3,‘$’

MOV DX OFFSET OBUF MOV AH,9 INT 21H

ret begin endp code ends end begin

1. 编写源程序实现以下功能:z=|x-y|。x、y、z均为字节变量。

stack segment stack'stack' dw 32 dup(0) stack ends data segment x db 12h y db 10h z db 0 data ends code segment begin proc far

assume ss:stack,cs:code,ds:data push ds sub ax,ax push ax mov ax,data mov ds,ax mov al,x cmp al,y jge a1 sub y,al mov ah,y mov z,ah jmp exit a1:sub al,y mov z,al exit: ret begin endp code ends

编写源程序实现以下功能,在显示器上显示:Enter the string:I am a ChineseOutput the

string again:I am a Chinese

stack segment stack 'stack' dw 32 dup(0) stack ends data segment

OBUF DB 'Enter the string:$' IBUF DB 0FFH,0,255 DUP(0)

OBUF1 dB 'Output the string again:$' data ends code segment begin proc far

assume ss:stack,cs:code,ds:data push ds sub ax,ax push ax mov ax,data mov ds,ax

MOV DX,OFFSET OBUF MOV AH,9 INT 21H mov dl,0ah mov ah,2 int 21h mov dl,0dh mov ah,2 int 21h

MOV DX,OFFSET IBUF MOV AH,10 INT 21H mov dl,0ah mov ah,2 int 21h mov dl,0dh mov ah,2 int 21h MOV DX,OFFSET OBUF1

MOV AH,9 INT 21H mov dl,0ah mov ah,2 int 21h mov dl,0dh

mov ah,2 int 21h mov bl,ibuf+1 mov bh,0

MOV iBUF[BX+2],'$' MOV DX,OFFSET ibuf+2 MOV AH,9 INT 21H RET begin endp code ends

end begin

编写源程序实现以下功能:将字节变量BVAR中存放的两位压缩BCD数转换为二进制数,并存入原字节变量中。 程序运行后,如何查看字节变量BVAR中存放的内容?

1.stack segment stack 'stack' dw 32 dup(0) stack ends data segment

stt DB 10,0,10 dup (0),'$' data ends code segment begin proc far assume ss:stack,ds:data,cs:code push ds sub ax,ax push ax mov ax,data mov ds,ax mov dx,offset stt mov ah,10 int 21h mov bh,stt+2 mov bl,stt+3 and bh,0fh and bl,0fh mov al,bh mov ch,10

mul ch

add al,bl mov bl,al and al,01h mov stt+8,al add stt+8,30h mov cx,7 mov si,7 bv: mov al,bl shr al,1 mov bl,al and al,01h mov stt[si],al add stt[si],30h dec si loop bv mov dx,offset stt mov ah,9 int 21h rends end beginet begin endp code ends begin end

1)写出实验源程序。

(2)请回答以下问题:汇编源程序的后缀名是(.asm);源程序要通过(masm.exe)程序编译生成目标文件,目标文件的后缀名是(.obj);目标文件要通过(link.exe)程序生成可执行文件,可执行文件的后缀名是(.exe )。

1)写出实验源程序。

(2)请回答以下问题:汇编源程序的后缀名是(.asm);源程序要通过(masm.exe)程序编译生成目标文件,目标文件的后缀名是(.obj);目标文件要通过(link.exe)程序生成可执行文件,可执行文件的后缀名是

(.exe )。

stack segment stack ‘stack’ dw 32 dup (0) stack ends data segment

obf db ‘ wish you success!$’ data ends code segment start proc far

assume ss: stack, cs: code, ds: data

push ds sub ax, ax push ax

mov ax, data mov ds, ax

mov dx, offset obf mov ah, 9 int 21h ret start endp code ends end start

写ASCII码的查询程序。要求该程序运行后显示提示信息:“The ASCII code of”,待查询者输入欲查字符后再显示“is”和该字符的ASCII码,换行后又输出提示信息“The ASCII code of”待查,如此不断循环。直至查询者输入回车符输出“is 0DH”后,结束该程序的运行。 stack segment stack stack dw 32 dup(0) stack ends data segment

obuf DB 0DH, 0AH, The ASCII code of $

enter DB The ASCII code of enter is 0DH$ is DB 20h, is,20h,0,0,H$ data ends code segment begin proc far

assume ss: stack, cs: code, ds: data

push ds sub ax, ax push ax

mov ax, data mov ds, ax A1: MOV AH, 9

MOV DX, OFFSET obuf INT 21H MOV AH, 1 INT 21H

CMP AL, 0DH JE A4

MOV AH, AL

MOV CL,4 SHR AH, CL ADD AH, 30H CMP AH, 3AH JC A2

ADD AH, 7 A2: MOV is+4, AH AND AL,0FH ADD AL,30H CMP AL, 3AH JC A3

ADD AL,7 A3: MOV is+5,Al

MOV DX,OFFSET is MOV AH,9 INT 21H JMP A1 A4: MOV AH,9

MOV DX,OFFSET enter INT 21H ret begin endp code ends

end begin

1)写出实验源程序。

(2)画出程序中数据段的内存示意图;指出每条指令中目的操作数的寻址方式

(3)-u命令的功能:一次反汇编的32个字节

-r命令的功能:检查寄存器里面的数据

-d命令的功能:检查存储器里面的数据

-p命令的功能:单步调试 -q命令的功能:退出 -g命令的功能:

stack segment stack 'stack' dw 32 dup (0) stack ends data segment data ends code segment begin proc far assume ss:stack,cs:code,ds:data push ds sub ax,ax push ax mov ax,data mov ds,ax mov ax,1234h mov ds:[1000h],ax mov bx,1002h mov byte ptr[bx],20h mov dl,39h inc bx mov [bx],dl dec dl mov si,1 mov [bx+si],dl mov [bx+si+1],dl mov word ptr [bx+si+2],2846h ret begin endp code ends end begin data 34h 12h 20h 39h 39h 39h 46h 28h

编写源程序实现以下功能:将字节变量BVAR中存放的两位压缩BCD数转换为二进制数,并存入原字节变量中。 stack segment stack'stack' dw 32 dup(0) stack ends data segment bvar db 25 data ends code segment begin proc far

assume ss:stack,cs:code,ds:data push ds sub ax,ax push ax mov ax,data mov ds,ax mov al,bvar mov ch,0ah and al,0f0h mov cl,4 sar al,cl mul ch

and bvar,0fh

add word ptr bvar,ax ret begin endp code ends

end begin

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库汇编程序汇总在线全文阅读。

汇编程序汇总.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/515732.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: