Почему возникает ошибка при компиляции в NASM?

Здравствуйте, я только начинаю изучать ассемблер. Есть код программы, пытаюсь его скомпилировать:

Код программы
.model tiny
.286
.data
msg db  'Hello World11111111111111111111111111111111111111111111111111111111'
position    word    0312h
color   db  03dh
count   word    0043h
.code
 
org 100h
 
start:
    call    clrscr
    mov ax, 0   ;word
    mov ax, 1300h
    mov bp, offset msg
    mov cx, count
    mov dx, position
    mov bl, color
    int 10h
 
    mov ah, 02h
    mov dx, position
    sub dx, 0101h
    int 10h
    mov ah, 09h
    mov al, 0c9h
    mov cx, 1
    int 10h
 
    mov ah, 02h
    inc dx
    int 10h 
    mov ah, 09h
    mov al, 0cdh
    mov cx, count
    int 10h
 
    add dx, count
    mov ah, 02h
    int 10h
    mov ah, 09h
    mov al, 0bbh
    mov cx, 1
    int 10h
 
    mov ah, 02h
    add dx, 0100h
    int 10h
    mov ah, 09h
    mov al, 0bah
    mov cx, 1
    int 10h
 
    mov ah, 02h
    sub dx, count
    dec dx
    int 10h
    mov ah, 09h
    int 10h
 
    mov ah, 02h
    add dx, 0100h
    int 10h
    mov ah, 09h
    mov al, 0c8h
    int 10h
    
    mov ah, 02h
    inc dx
    int 10h
    mov ah, 09h
    mov al, 0cdh
    mov cx, count
    int 10h
    
    mov ah, 02h
    add dx, count
    int 10h
    mov ah, 09h
    mov al, 0bch
    mov cx, 01h
    int 10h
 
    mov ah, 02h
    mov dx, 1801h
    int 10h
    int 20h
        
clrscr:
    mov ah, 0h
    mov al, 03h
    int 10h
    ret
end start



Компилирую командой:
nasm -f bin first.asm -o first.com

Получаю следующие ошибки:

D:\Assembler>nasm -f bin first.asm -o first.com
first.asm:1: error: attempt to define a local label before any non-local labels
first.asm:1: error: parser: instruction expected
first.asm:2: warning: label alone on a line without a colon might be in error [-w+orphan-labels]
first.asm:2: error: attempt to define a local label before any non-local labels
first.asm:3: warning: label alone on a line without a colon might be in error [-w+orphan-labels]
first.asm:3: error: attempt to define a local label before any non-local labels
first.asm:5: error: parser: instruction expected
first.asm:7: error: parser: instruction expected
first.asm:8: warning: label alone on a line without a colon might be in error [-w+orphan-labels]
first.asm:16: error: comma, colon, decorator or end of line expected after operand
first.asm:95: error: parser: instruction expected


Мои знакомые просто как-то переносят этот код в DoxBOX и там у них всё прекрасно работает. Подскажите пожалуйста как можно исправить код программы, чтобы он правильно компилировался NASM-ом. Спасибо.
  • Вопрос задан
  • 1483 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы