world 汇编语言 如何倒序输出hello (world汇 提现提不出来)
本文目录导航:
- 汇编语言 如何倒序输出hello world
- 编写完整汇编语言程序,在屏幕中间输出红底黑字的字符串:"Hello,I'm 1123"求答案!急!
- 如何使同汇编语言编写从键盘输入一段字符串然后逆序输出?
汇编语言 如何倒序输出hello world
三个方法:1、定义字符串时倒序。
2、一个一个字符发,寻址时偏移量指向字符串末端,发一个字符偏移量减一。
3、倒序迁移字符串到内存再发送。

编写完整汇编语言程序,在屏幕中间输出红底黑字的字符串:"Hello,I'm 1123"求答案!急!
;代码如下
;有的汇编器不用这一行, 不过nasm需要
;output a string in the middle and colored black ,and bg-colored red
;清屏
mov AH, 06 ; function number
mov AL, 00 ; page number
mov BH, 07 ; normal attribute
mov CH, 00 ; row value of start point
mov CL, 00 ; column value of start point
mov DH, 24 ; row value of ending point
mov DL, 79 ; column value of ending pos
int int 10h;移动光标
mov ah, 02h ; function number
mov DH, row ; cursor
mov DL, column ; position
int 10h;输出;color
mov BH, 00 ; page 0
mov BL, 40h ;bgfo color
mov cx,L-1;len of STRING
mov bp,STRING
mov AX, 1301h ; function number
mov ax,4c00h
int 21h;exit
STRING DB HELLO,Im 1123,0
L equ $-STRING
row equ 13-1
column equ (80-L)/2-1
;汇编过程及调试结果
如何使同汇编语言编写从键盘输入一段字符串然后逆序输出?
先前回答过该问题,现发给你。\x0d\x0a\x0d\x0a;运行示范如下\x0d\x0a;C:\R\x0d\x0a;HXGSFHSDG736RU3GRHVF847TBF47EHF78CGY4RCY4M8CEW7YDNRG\x0d\x0a\x0d\x0a;GRNDY7WEC8M4YCR4YGC87FHE74FBT748FVHRG3UR637GDSHFSGXH\x0d\x0a;C:\\x0d\x0a;用MASM5.0编译通过\x0d\x0a\x0d\x0aDATA SEGMENT\x0d\x0a\x0d\x0aDB 512 DUP($);定义可输入的字符个数\x0d\x0aBUF DB $\x0d\x0aCRLF DB 0DH,0AH,24H ;回车换行符\x0d\x0aDATA ENDS\x0d\x0a\x0d\x0aCODE SEGMENT\x0d\x0aASSUME CS:CODE,DS:DATA\x0d\x0aSTART: MOV AX,DATA\x0d\x0a MOV DS,AX\x0d\x0a\x0d\x0aMOV BX,OFFSET BUF ;指针指向待显示字符串尾部\x0d\x0aAGAIN:\x0d\x0aMOV AH,01 ;输入字符\x0d\x0aINT 21H\x0d\x0aCMP AL,0DH ;是回车吗\x0d\x0aJE DISP;是,转显示\x0d\x0aDEC BX;指针减1\x0d\x0aMOV [BX],AL ;存入输入的字符\x0d\x0aJMP AGAIN ;继续输入\x0d\x0a\x0d\x0aDISP:\x0d\x0aMOV AH,09 ;显示\x0d\x0aMOV DX,OFFSET CRLF ;回车换行\x0d\x0aINT 21H\x0d\x0aMOV DX,BX ;定位待显示字符串首地址\x0d\x0aMOV AH,09 \x0d\x0aINT 21H;显示\x0d\x0a\x0d\x0aMOV AH,4CH ;DOS返回\x0d\x0aINT 21H\x0d\x0aCODE ENDS\x0d\x0aEND START