ich habe hier ein Assembler Programm geschrieben, mit nasm. Es ist ein Fehler drin, ich suche ihn jetzt nicht
global _start
section .text
str1: db "hasjsdahsjdasdaasdjasdjas", 0
section .data
_start:
mov eax, str1
mov esi, eax
mov edx, 0
sortloop1:
mov ah, [esi]
cmp ah, 0
je sortloop1end
mov eax, esi
mov edi, eax
sortloop2:
inc edi
mov ah, [edi]
cmp ah, 0
je sortloop2end
mov ah, [esi]
mov al, [edi]
cmp ah, al
jle sortnoexchg
mov ah, [esi]
mov al, [edi]
mov [edi], ah
mov [esi], al
sortnoexchg:
jmp sortloop2
sortloop2end:
inc esi
inc edx
jmp sortloop1
sortloop1end:
;;mov edx, length
mov ecx, str1
mov ebx, 1
mov eax, 4
int 0x80
mov ebx, 0
mov eax, 1
int 80h
david@work:~$ nasm -f elf32 sort20240916.asm
david@work:~$ ld -m elf_i386 sort20240916.o -o sort20240916
david@work:~$ ./sort20240916
Speicherzugriffsfehler (Speicherabzug geschrieben)
david@work:~$