在x86程序集中增加一个字符串

时间:2017-04-28 19:19:29

标签: assembly x86 dos

如何将字符串中的每个字符增加3? 我实际上是装配新手,我不太了解它:/ 我有一个代码,它接受STRING输入并在屏幕上向用户显示输出

.model small
.stack 100h
.data

  STR1 DB "ENTER YOUR STRING : $"
  STR2 DB "YOUR STRING IS : $"
  INSTR1 DB 20 DUP("$")
  NEWLINE DB 10,13,"$"

.code
main proc

Mov ax,@data
mov ds,ax

    LEA SI,INSTR1

;Get STRING

    MOV AH,09H
    LEA DX,STR1
    INT 21H

    MOV AH,0AH
    MOV DX,SI
    INT 21H

    MOV AH,09H
    LEA DX,NEWLINE
    INT 21H

;PRINT STRING


    MOV AH,09H
    LEA DX,STR2
    INT 21H

    MOV AH,09H
    LEA DX,INSTR1+2
    INT 21H

     MOV AH,09H
    LEA DX,NEWLINE
    INT 21H


mov ah,4ch
int 21h
main endp
end main

假设用户写“HELLO”,那么我想要的输出就是'KHOOR'。那我该怎么做?

1 个答案:

答案 0 :(得分:0)

在评论exponent之后插入下一个循环:

Real