1 / 1 / 0
Регистрация: 13.08.2017
Сообщений: 30
|
||||||
1 | ||||||
Hello, world!05.07.2019, 13:11. Показов 2919. Ответов 7
Метки hello world (Все метки)
Здравствуйте, вот решил начать изучение Assembler. По книге написал hello world и получил ошибку компиляции и прилинковки. Помогите пожалуйста, уже копировал чужие hello world и получал схожие ошибки. Спасибо.
( C:\Users\Up-grade>D:\masm32\bin\ml.exe /c /coff C:\Users\Up-grade\Desktop\new2.asm Microsoft (R) Macro Assembler Version 6.14.8444 Copyright (C) Microsoft Corp 1981-1997. All rights reserved. Assembling: C:\Users\Up-grade\Desktop\new2.asm C:\Users\Up-grade\Desktop\new2.asm(14) : warning A4023: with /coff switch, leadi ng underscore required for start address : Start C:\Users\Up-grade>D:\masm32\bin\link.exe /subsystem:windows C:\Users\Up-grade\De sktop\new2.obj Microsoft (R) Incremental Linker Version 5.12.8078 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. LINK : fatal error LNK1181: cannot open input file "C:\Users\Up-grade\Desktop\new2.obj" ) Код программы:
0
|
05.07.2019, 13:11 | |
Ответы с готовыми решениями:
7
Hello, World Hello World Hello, world Вывод Hello, World |
1 / 1 / 0
Регистрация: 13.08.2017
Сообщений: 30
|
|
05.07.2019, 13:19 [ТС] | 3 |
Помогло, но теперь ошибка прилинковки
LINK : fatal error LNK1181: cannot open input file "C:\Users\Up-grade\Desktop\ne w2.obj" В консоль ввожу вот эти строчки: D:\masm32\bin\ml.exe /c /coff C:\Users\Up-grade\Desktop\new2.asm D:\masm32\bin\link.exe /subsystem:windows C:\Users\Up-grade\Desktop\new2.obj
0
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
05.07.2019, 13:21 | 4 |
Сообщение было отмечено Merry Milkman как решение
Решение
Merry Milkman, Вы пытаетесь скомпилировать при помощи windows-кой masm32 досовский исходник...
Что недопустимо. Найдите досовский masm, версии, например, v6.11
0
|
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
|
05.07.2019, 13:30 | 5 |
Сообщение было отмечено Merry Milkman как решение
Решение
Потому что ты находишь в директории Up-grade. А твой ассемблерный файл находится в Desktop. А объектный файл генерируется ровно там, где ты находишься, а не в desktop.
Добавлено через 3 минуты Код
> type new2.asm CSEG segment org 100h _Start: mov ah,9 mov dx,offset Message int 21h int 20h Message db 'Hello, world!$' CSEG ends end _Start > ml.exe /c /coff new2.asm Microsoft (R) Macro Assembler Version 14.16.27031.1 Copyright (C) Microsoft Corporation. All rights reserved. Assembling: new2.asm > dir 07/05/2019 01:23 PM 146 new2.asm 07/05/2019 01:27 PM 724 new2.obj 2 File(s) 870 bytes
2
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
05.07.2019, 13:32 | 6 |
Vourhey, согласен, только добавлю, линковать надо при помощи link16.exe
3
|
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,047
|
|
07.07.2019, 08:47 | 7 |
Этими строчками виндозные программы собираются. А тебе надо досовскую com-программу собрать. Вот так :
cd каталог_с_твоим_исходником \masm32\bin\ml /c new2.asm \masm32\bin\link16 /TINY new2.obj,new2.com,new2.lst,,, сom-программа получится в том-же каталоге, что и исходник
1
|
1 / 1 / 0
Регистрация: 13.08.2017
Сообщений: 30
|
|
07.07.2019, 14:15 [ТС] | 8 |
Спасибо всем, уже разобрался
1
|
07.07.2019, 14:15 | |
07.07.2019, 14:15 | |
Помогаю со студенческими работами здесь
8
Мой первый Hello, world! hello world! Hello World в MASM32 Не выводится Hello, World Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |