Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2010, 01:47   #1
Merrowing
 
Регистрация: 08.06.2010
Сообщений: 4
По умолчанию переделка DOS програмы под Windows

Очень нужно програму под DOS переделать под Windows
вот текст программы

. MODEL small
. STACK 100h

. DATA

CR = 0Dh
LF = 0Ah
Massage1 DB CR, LF, 'File Name'


Mess1Len = $-Message1
Message2 DB CR, LF, 'Key:'

Mess2Len = $-Message2
Password DB 80 DUP ('*')
Buf DB 4096(?)
FileLen DW ?
Key DB ?
FileName DB 32 DUP (?)
FDescr DW ?

.CODE

Begin
mov ax, @data
mov ds, ax

mov ah, 40h
mov bx, 1
mov cx, Mess1Len
mov dx, OFFSET Message1

int 21h

mov ah, 3fh
xor bx, bx
mov cx, 30
mov dx, OFFSET FileName

int 21h
mov bx, ax
sub bx, 2
mov FileName[bx], 0

mov ah, 40h
mov bx, 1
mov cx, Mess2Len
mov dx, OFFSET Massage2

int 21h

mov ah, 3fh
xor bx, bx
mov cx, 80
mov dx,OFFSET Password

int 21

mov si, OFFSET Password
xor al, al
mov cx, 80

NextByte1 add al, [si]
inc si
loop NextByte1
mov Key, al

mov ah, 3dh
mov al, 2
mov dx, OFFSET FileName

int 21h
mov FDescr, ax

mov ah, 3fh
mov bx, FDescr
mov cx, 4096
mov dx, OFFSET Buf

int 21h
mov FileLen, ax

mov cx, FileLen
mov si, OFFSET Buf

mov al, Key
NextByte2 xor [si], al
inc si

loop NextByte2

mov ah, 42h
mov bx, FDescr
xor al, al
xor cx, cx
xor dx, dx

int 21h

mov ah, 40h
mov bx, FDescr
mov cx, FileLen
mov dx, OFFSET Buf

int 21h

mov ah, 3eh
mov bx, FDescr
int 21h

mov ah, 4ch
xor al, al
int 21h
END BEGIN


суть программы в шифровании файлов ( ограничение по размеру файла 4096 байт)
буду очень сильно благодарен тем кто поможет
Merrowing вне форума Ответить с цитированием
Старый 08.06.2010, 04:11   #2
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Merrowing
Должен вас огорчить, но под Windows 21h прерывание не работает (будет необходима кординальная переделка программы), но есть и хорошие новости, запусти свою программку под Windows и она отработает под DOS-эммулятором т.е. файл будет создан и информация туда будет записана, для конечного пользователя помоему это самое главное
Mikl___ вне форума Ответить с цитированием
Старый 08.06.2010, 11:01   #3
Merrowing
 
Регистрация: 08.06.2010
Сообщений: 4
По умолчанию

т.е. поставить DOS емулятор и через него ее скомпилировать и запускать?
Merrowing вне форума Ответить с цитированием
Старый 08.06.2010, 11:10   #4
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Merrowing
Компилируй TASM'ом или MASM'ом и запускай, Windows сама сообразит под эмулятором или как...
Mikl___ вне форума Ответить с цитированием
Старый 08.06.2010, 15:00   #5
Merrowing
 
Регистрация: 08.06.2010
Сообщений: 4
По умолчанию

пытался.оба говорили что начало неверное...
Merrowing вне форума Ответить с цитированием
Старый 08.06.2010, 20:23   #6
Ulex
Непрофессионал
Участник клуба
 
Аватар для Ulex
 
Регистрация: 01.01.2008
Сообщений: 1,405
По умолчанию

Синтаксические ошибки я вам поправил, а с логическими сами разбирайтесь. Компилировать TASM-ом (батник прилагается).
Вложения
Тип файла: rar proga48.rar (1.0 Кб, 13 просмотров)
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------
Страничка с моими программками http://ulex-masm.ru
Ulex вне форума Ответить с цитированием
Старый 08.06.2010, 22:29   #7
Merrowing
 
Регистрация: 08.06.2010
Сообщений: 4
По умолчанию

большое спасибо

Последний раз редактировалось Merrowing; 08.06.2010 в 23:04.
Merrowing вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рисую окошки под Dos G-Cat Общие вопросы C/C++ 1 28.02.2010 10:33
Из Dos под Win Nozema Фриланс 3 30.10.2009 17:34
C++ под DOS. Функции Xeon332 Общие вопросы C/C++ 34 29.11.2008 18:01
borland C++под DOS Xeon332 Помощь студентам 9 20.09.2008 20:50