Ich arbeite in emu8086 Version 4.08. Ich muss eine Studenten-Datenbank erstellen. Also, wenn ich eine Liste von Namen oder ID in einem Array von Strings speichern möchte, wie kann ich es tun? oder gibt es einen anderen Weg? Danke im Voraus. HierWie deklariert und manipuliert man ein Array von Strings in 8086 Assembler?
ist der Code, den ich versuche:
include 'emu8086.inc'
.model small
.stack 100h
.data
str2 dw 20 dup('$')
.code
mov ax,@data
mov ds,ax
main proc
mov si,0
mov str2[si],"student1$"
add si,1
mov str2[si],"student2$"
add si,1
mov str2[si],"student3$"
add si,1
mov str2[si],"student4$"
mov ah,4ch
int 21h
endp main
DEFINE_SCAN_NUM
DEFINE_PRINT_STRING
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS
DEFINE_PTHIS
Wie würden Sie geschrieben werden müssen gehen Sie darum, Noten in einer Reihe von Zahlen zu speichern? Denken Sie darüber nach und sehen Sie, ob es Sie in die richtige Richtung bringt. Wie auch immer, Sie sollten Programmiercode in Ihre Frage aufnehmen, damit wir wissen, was Sie wissen oder nicht wissen. –
@SepRoland Ich habe den Post bearbeitet und den Code hinzugefügt. Während der Emulation heißt es, "kann nicht in 16-Bit-Wert konvertiert werden:" student1 $ "" und dasselbe für alle Strings. –
Kannst du deiner Frage hinzufügen, was deine Hausaufgabe eigentlich ist? Aus dem Code ist nicht ganz klar, was die Parameter der Frage wirklich sind. Aber wie es aussieht, werden Dinge wie 'mov str2 [si], 'student1 $" 'nicht funktionieren. Sie verschieben keine Zeichenfolgen mit 'mov', aber Sie können die Adressen von Zeichenfolgen verschieben. –