1、微机原理实验 实验七、将二进制数转换为ASCII码一、 实验目的进一步掌握码制转换的基本原理及相应的转换程序的方法。二、 实验内容将内存变量中的16位二进制数,转换成相应的ASCII码,存入相应的串变量中。三、 参考程序框图完成程序四、 编写程序如下: data segmentdata1 db 31h,32h,33h,34h,35hdata2 db 5 dup(?)data endscode segmentassume cs:code,ds:datastart: mov ax,data mov ds,ax mov di, offset data1 mov si,10 mov cx,5ddd:
2、mov dx,0000h div si add dx,30h mov dl,di inc di cmp ax,0 jnz ddd hlt code ends end start实验八、 字符和数据的显示程序一、 实验目的1、 掌握字符和数据的显示方法,了解将数据显示时需转换为ASCII码的原理。2、 熟悉DOS功能的调用方法。二、 实验内容 先显示信息“INPUT STARING,THE END FLAG IS $”,在接收字符,如为数字则显示1。如为数字(09),则直接显示,但不计数。最后显示计数值。三、 参考程序框图完成程序 四、 编写程序如下: data segmentmess db I
3、nput string,The end flag is $,$ascii db 5 dup(0)data endscode segmentassume cs:code,ds:datastart proc near mov ax,data mov ds,ax mov dx,offset mess mov ah,09h int 21h mov BX,0000H inpt: mov ah,01h int 21h cmp al,$ jz disp cmp al,30H jl aaaa cmp al,39h jg aaaa mov ah,02h mov dl,al int 21h jmp inptaaa
4、a: inc bx jmp inptdisp: mov ax,bx call binasc mov cx,5 mov si,offset asciidis: mov ah,02h mov dl,si int 21h inc si loop dis mov ah,4ch int 21h start endp binasc proc near mov si,10 mov di,offset ascii ddd: mov dx,0000H div si add dl,30h mov di,dl inc di cmp ax,0 jnz ddd ret binasc endp code ends end
5、 start实验九、将键盘输入的大小写字母相互进行转换 一、 实验目的1、 了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换。2、 掌握DOS功能调用的方法。二、 实验内容 接收键盘字符,并将其中的大小写字母相互转换。然后将转换结果显示在屏幕上。三、 参考程序框图完成程序。 四、 程序编写如下: crlf macro mov dl,0dh mov ah,02h int 21h mov dl,0ah mov ah,02h int 21hendmdata segmentdatabuf db 30 dup(0)data endscode segmentassume cs:code,ds
6、:datastart: mov ax,data mov ds,ax mov bx,offset databuf mov si,0000h chr: mov ah,01h int 21h cmp al,0dh jz disp cmp al,Z jg sml ADD al,20h mov bx+si,al inc si jmp chr sml: SUB al,20h mov bx+si,al inc si jmp chr disp: crlf mov cx,si disp1: mov ah,02h mov dl,bx int 21h inc bx loop disp1 mov ah,4ch int
7、 21h code ends end start实验十 求x2实验一、 实验目的1、 掌握表处理程序设计的基本方法。2、 掌握XLAT语句的用法。3、 掌握DOS功能调用的方法。二、 实验内容1、 编写程序,用查表法求一给定值X的平方,X的取值范围为09;2、 要求X从键盘输入,当输入值不为09时给出提示信息,并重新输入,按“*”键退出。三、 编写程序如下: data segmentdata1 db 00H,01H,04H,09H,16H,25H,36H,49H,64H,81Hdata endscode segmentassume cs:code,ds:datastart: mov ax,da
8、ta mov ds,ax mov bx,offset data1 mov ah,01H int 21H cmp al,30H jl aaaa cmp al,39h jg aaaa sub al,30h xlat mov cl,al ror al,1 ror al,1 ror al,1 ror al,1 and al,0fh add al,30h mov ah,02h mov dl,al int 21h mov al,cl and al,0fh add al,30h mov ah,02h mov dl,al int 21h aaaa: mov al, mov ah,4ch int 21h code ends end start
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1