ПредишенСледващото

Въпроси: 8 Отговори: 12

Въпрос № 66.395

Въпрос № 66.399

Аз имам един въпрос за Assmu.
Току-що започна да го научат, и имам въпроси. Когато създавате програма в Далечния черупка създадете файл с име 11.asm. След това създайте команден файл amake.bat. След това отидете на 11.asm. и започва да тече от командния ред amake на 11. И след това той пише педя «amake» не е вътрешна или външна команда, работещ програма или партида файл. Какво е по моя вина. Prompt моля :.
Операционна система - XP
Процент. AMD Athlon 64-3000.

Отговаря: Волков Павел Юревич
Здравейте, Merlin09!
Batnik amake.bat, трябва да е в папка съставител е на същото място и изходния код (програмен код). Местоположение на командния файл не е включен в променливата PATH, така или поставени в една от папките, които са включени в PATH (списъка с папките може да се намери чрез "определя пътя", в командния ред), или да го ползвате в текущата папка.
---------
Живей и да се учат.

Отговори: Lukovkin Николай
Здравейте, Merlin09!
Преди да можем да отговорим на основния си въпрос, нека да ви проверете дали са инсталирани файловете в съставител черупка досега?
1. Отворете папката, където сте инсталирали черупката FAR (имам в основната директория на диск C :)
2. Проверете на същото място, където досега и обвивката, наличието на папка с myasm на име (тъй като аз MASM съставител). Името на същата тази папка, съответно, трябва да присъства в панела черупка FAR.
3.Sozdaem компилатор командни файлове:
3.1.Otkryvaem myasm папка, след папка за боклук. Алтернативно отворен (Мисля, че няма нужда да се обясни как се прави това) партида файлове: amake.bat, cmake.bat, dmake.bat, wmake.bat и долната линия напишете фразата:
пътека = C: myasmin
3.2.Sohranyaem ни от всички фраза и файлови промени да влязат в сила рестартирате компютъра.
4.Ukazyvaem път към програмата асемблер:
4.1. В OS Windows XP отворите:
Контрол панел-> System-> Advanced-> променливи
Ако път вече е създаден за някои други програми, бод пиша по-долу:
път =<уже существующая=>
пътека =% път% С: myasmin
За да се направят промените рестартирате компютъра.
5. Сега дойде на въпроса си: да се гарантира, че тези грешки не се появяват като направите следното (при едно условие, че ние асемблер обявата PROSCALE написана правилно и без грешки):
5.1. Отворете myasm-> боклук. От папката бин и копие на инсталацията (с помощта на контекстното меню) в главната директория на C: диск (където сме инсталирали черупката FAR) следните файлове:
amake.bat, cmake.bat, dmake.bat, wmake.bat, exe2bin, link.exe, link16.exe, ML.EXE, RC.EXE, MSPDB50.DLL
6. Мога да ви уверя, ако си направил всичко както описах такива грешки няма да има.
7. Бих искал да припомня, в бъдеще и да предупреждава, когато com.programmu пиша за DOS (партида файл за съставянето - cmake) и exe.programmu за DOS (dmake), файлове МС. и Търсейки. за изпълнение не се изпълнява в Windows и плащам FAR и Norton Commander за DOS режим на цял екран.
8. Писмо получи дълго за една причина: през последните години често идват в портала въпроси от начинаещи, за да научите Assembler с подобни въпроси, които се използват в черупката FAR и MASM компилатор. И причината е само една (с условието, че писменото програмата без грешки):
- неправилно или не е напълно инсталиран и конфигуриран на околната среда (съставител командни файлове) за съставяне на програми, написани, не укажете пътя до програмата-асемблер.
Успех в изучаването на асемблер!
Николас
---------
Основният критерий за ефективността на всеки отделен път може да служи само като хит или не краен резултат бисквита.

Въпрос № 66.485

Здравейте експерти скъпи!

Обяснете ми как асемблер използва 3DH функция, 3FH, 40h, 21-ви 3EH прекъсване при работа с файлове. Извършване излъчи следния код и стартирате файла, аз естествено не виждам процеса на отваряне на файла в Windows:

; Аз отворите файла за писане.
Mov брадва, 3d01h
Mov DX, офсетов firstfile
вътр 21ч
Mov дръжка, брадва

Тогава аз се опитах да се добави функция за запис на 16 байта.

; Аз пиша във файл от 16 байта.
Mov ах, 40h
Mov BX, брадва
Mov CX, 10h
Mov DX, офсетов буфер
вътр 21ч
; Аз затворете файла.
Mov ах, 3EH
Mov BX, да се занимават
вътр 21ч
кисна
firstfile db "C: myfile.txt", 0
буфер тех $
дръжка DW?

и нищо не се е случило. File като празен, и остана, въпреки че атрибутът "Само за четене" е заснет. Assembler може да работи с файлове, като човек, от друга страна, не защото сме свикнали да?
И все пак, аз не знам какво функция ви позволява да копирате файлове от една директория в друга.
Благодарим Ви!

---------
Идеална защита не съществува, защото това, което е създадено от човешкия разум, те също ще бъдат унищожени!

Отговори: Олег
Здравейте, Paltus!

Може би това е печатна грешка, но преди да се записва във файла не е необходимо да MOV BX, AX и MOV BX, манипулатор!
Освен това, какво прави буфер тех $. Както трябва да бъде низ за записване, прекъсват не очаква да получи постоянна, който съдържа номера на текущата клетка. Така че да се коригира буфер db "Шестнадесет знаци. "
На последно място, се предлага да не се отваря съществуващ файл за писане (3DH), но да се създаде (презаписване ако е необходимо) на празен файл (3Ch). Пример в приложението
Успех
PS. Функции на копиране, доколкото ми е (не) знаем, не INT 21h.

---------
Факултет по приложна математика и контрол - най-добрите в Санкт Петербург държавен университет!

Отговори: Lukovkin Николай
Здравейте, Лестат!
Започнете вашата програма в Norton Comander за DOS режим на цял екран.
---------
Основният критерий за ефективността на всеки отделен път може да служи само като хит или не краен резултат бисквита.

Въпрос № 66.551

-Изтеглен от сайта си MASM611 направи всичко по силите в (книгата на Калашников)
> Запазете prilozhenii№1 (разопаковани и td.zashel в директорията BIN). но тук
> Къде да пиша на програмата. как да го активирате. къде? (в какъв файл и как тя ще работи) Аз не се получи (в книгата на тази повърхност)
> (Гледан тези въпроси на сайта, за съжаление отговорите много
> Ниския и кратко), ако не е трудно да се угоди на отговор в стъпки (където,
> Къде и как?). жалко, тъй като това е единственото нещо, което не е ясно в книгата

---------
Идеална защита не съществува, защото това, което е създадено от човешкия разум, те също ще бъдат унищожени!

Подкрепете проекта - споделете линка, благодаря!