`` `nasm
; truncate.asm
%MACRO MUCROCATE Dateiname Len =0
beweglich ECX, Dateiname; Zeiger auf Dateiname
MOV EDX, Len; Länge, um die Dateigröße zu begrenzen
Xor eax, eax; Open Lesen Sie nur
mov ebx, 0; abschneidern, wenn existierend
Rufen Sie [öffnen]; öffnen Sie die Datei
Testen Sie EAX, EAX; Erfolg?
jnz @@ abgeschnitten
Xor Eax, Eax;
Rufen Sie [verkürzt] an, die Datei abschneiden
Testen Sie EAX, EAX; Erfolg?
jnz @@ abgeschnitten
@@gekürzt:
Pop ecx; ECX vor dem Makro wiederherstellen
%Endmacro
Abschnitt .Data
Dateiname db 'truncate.txt', 0
Len DW 5
Abschnitt .Text
Angenommen, CS:Code, DS:Daten
org 100h
Kürzer Dateiname, Len
MOV AH, 4Ch; Exit -Programm
int 21h
`` `