¿Cómo termino una cadena en '<Retorno de carro> <Avance de línea>'?

Arkansas

Se supone que debo comparar dos cadenas en el ensamblaje 8086, sin usar instrucciones de cadena. Hasta aquí todo bien. Me las arreglé para encontrar algo parecido a esto, pero la asignación también menciona tener que terminar las cadenas en = (0x0d, 0x0a). No estoy seguro de cómo hacer esto, y no estoy seguro de si el código que tengo ya lo hace.

Intenté buscar un poco en Internet y en alguna documentación, pero mi nivel de conocimiento es demasiado bajo o simplemente no he encontrado una explicación adecuada.

Aquí está el código:

  DATA SEGMENT
        STR1 DB "ENTER FIRST STRING HERE ->$"
        STR2 DB "ENTER SECOND STRING HERE ->$"
        STR11 DB "FIRST" 13, 10 "STRING : ->$"
        STR22 DB "SECOND STRING: ->$"

        INSTR1 DB 20 DUP("$")
        INSTR2 DB 20 DUP("$")
        NEWLINE DB 10,13,"$"
        N DB ?
        S DB ?
        MSG1 DB "BOTH STRING ARE SAME$"
        MSG2 DB "BOTH STRING ARE DIFFERENT$"

  DATA ENDS

  CODE SEGMENT

        ASSUME DS:DATA,CS:CODE
  START:

        MOV AX,DATA
        MOV DS,AX

        LEA SI,INSTR1
        LEA DI,INSTR2

  ;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

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

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


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


  ;PRINT THE STRING

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

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

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

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

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

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

  ;STRING COMPARISON
        MOV BX,00

        MOV BL,INSTR1+1
        MOV BH,INSTR2+1

        CMP BL,BH
        JNE L1

        ADD SI,2
        ADD DI,2

      L2:MOV BL,BYTE PTR[SI]
        CMP BYTE PTR[DI],BL
        JNE L1
        INC SI
        INC DI
        CMP BYTE PTR[DI],"$"
        JNE L2

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

        JMP L5

      L1:MOV AH,09H
        LEA DX,MSG2
        INT 21H



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

        MOV AH,4CH
        INT 21H


  CODE ENDS
  END START
Peter Cordes

db "foo", 13, 10, "$"

Ya tienes un Newline con db 10,13, "$".

Eso es 0xa, 0xd(opuesto al orden habitual de DOS, pero el mismo efecto si se procesan por separado y se mueve el cursor vertical y horizontalmente).

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Retorno de carro \ Avance de línea en Java

Cómo verificar si la cadena contiene retorno de carro (CR) o un carácter de avance de línea (LF) en Java

Reemplazar cadena con avance de línea de retorno de carro con la expresión regular en código de Visual Studio

¿Cómo obtener el retorno de carro sin efecto de avance de línea en la consola Eclipse?

Elimine el retorno de carro y el avance de línea en todas las columnas de una tabla en Oracle

fgetc () agrega retorno de carro al avance de línea

Retorno de carro y avance de línea

C # Cómo convertir una cadena con símbolos de retorno de carro en una matriz

Cómo imprimir una cadena con un retorno de carro

Cómo imprimir una cadena con un retorno de carro

¿Cómo puedo detectar si una línea en una cadena no tiene más que carro (s) de línea?

RegEx en Delphi para eliminar el retorno de carro y los avances de línea en una cadena

Cómo eliminar todo en un campo después de una nueva línea o un retorno de carro

Kotlin agrega retorno de carro en una cadena de varias líneas

Regex para buscar instancias de un patrón de cadena que no esté precedido por un retorno de carro / avance de línea

Cómo lograr el retorno de carro / salto de línea en doctags

¿Cómo leo varias líneas y termino antes de una determinada cadena usando Scanner en Java?

Discrepancia de retorno de carro / avance de línea del administrador de conexión de archivos planos

¿Cómo reemplazar el carro de retorno en la cadena json hecha de mysql y php?

Cómo seleccionar una línea específica en una fila con retornos de carro

Reemplazar una cadena con un avance de línea en SAS

Impresión de consola C ++ en la misma línea con retorno de carro

¿Cómo lidiar con el retorno de carro que concatenan cadenas al final y al comienzo de una línea?

std :: getline () lee el retorno de carro \ r en la cadena, ¿cómo evitarlo?

¿Cómo eliminar una nueva línea, carro y pestaña horizontal desde el principio y el final de una cadena?

Cómo reemplazar el retorno de carro (CR) y no el salto de línea (LF) en Nifi

¿Cómo se reemplaza el retorno de carro múltiple / nueva línea con un solo retorno de carro?

Recibir cadena a través de Bluetooth Android (sin salto de línea o retorno de carro)

¿Cómo termino de forma concisa print () con una nueva línea doble?

TOP Lista

  1. 1

    ¿Cómo ocultar la aplicación web de los robots de búsqueda? (ASP.NET)

  2. 2

    Pandas의 CSV 파일을 Pandas 데이터 프레임으로 가져 오기

  3. 3

    uitableview delete button image in iOS

  4. 4

    Manera correcta de agregar referencias al proyecto C # de modo que sean compatibles con el control de versiones

  5. 5

    Swift / Firebase : Facebook 사용자가 계정을 만들 때 Firebase 데이터베이스에 제대로 저장하려면 어떻게해야합니까?

  6. 6

    caída condicional de filas desde un marco de datos de pandas

  7. 7

    Link library in Visual Studio, why two different ways?

  8. 8

    Pagination class not getting applied in html

  9. 9

    Que signifie Decimal (-1)?

  10. 10

    UIButton textLabel with different fonts

  11. 11

    WPF pleine largeur DataGridColumn sur la largeur de DataGrid

  12. 12

    Opción de máquina virtual no reconocida 'MaxPermSize = 512m' cuando se ejecuta Zeppelin

  13. 13

    matplotlib로 그래프를 그리는 동안 커서 위치에서 날짜 / 시간을 볼 수 없습니다. "DateFormatter에서 x = 0 값을 찾았습니다"라는 오류가 발생합니다.

  14. 14

    ¿Es posible en Windows evitar que otras aplicaciones se enganchen en las DLL del sistema?

  15. 15

    Error de la base de datos de Android Firebase: Permiso denegado al depurar en un teléfono

  16. 16

    Pandas: suma filas de DataFrame para columnas dadas

  17. 17

    ggplot2: gráfico con líneas y puntos para problemas de leyenda de dos conjuntos de datos

  18. 18

    ¿Cómo especificar el puerto en el que se aloja una aplicación ASP.NET Core?

  19. 19

    Recherche de la position d'index d'une valeur dans r dataframe

  20. 20

    GPU를 사용하여 ffmpeg 필터의 처리 속도를 가속화하는 방법은 무엇입니까?

  21. 21

    nested observables executed one after the other after termination

CalienteEtiquetas

Archivo