Автор: Пользователь скрыл имя, 26 Декабря 2011 в 13:54, курсовая работа
При создании и использовании ПЭВМ возникает целый ряд взаимосвязанных теоретических и практических проблем. В коммерческих и военных областях одной из основных является проблема защиты информации. Так можно выделить следующие объективные причины, определяющие важность проблемы защиты информации:
высокие темпы роста парка ПЭВМ, находящихся в эксплуатации;
широкое применение ПЭВМ в самых различных сферах человеческой деятельности;
высокая степень концентрации информации в ПЭВМ;
совершенствование способов доступа пользователей к ресурсам ПЭВМ;
усложнение вычислительного процесса в ПЭВМ.
Введение . . . . . . . . . . . 3
1. Постановка задачи . . . . . . . . . 4
1. 1. Организационно-экономическая сущность задачи . . . . 4
1. 2. Входные данные . . . . . . . . . 6
1. 3. Постоянная информация . . . . . . . . 6
1. 4. Выходная данные . . . . . . . . . 6
2. Вычислительная система . . . . . . . . 7
2. 1. Операционная система . . . . . . . . 7
2. 2. Технические средства реализации задачи . . . . . . 8
2. 3. Программные средства . . . . . . . . 8
3. Алгоритм задачи . . . . . . . . . 10
4. Описание программы . . . . . . . . . 14
5. Описание применения программы . . . . . . 16
6. Заключение . . . . . . . . . . 17
jmp use
d_t_2:
inc si
call det_type
pop ax
cmp ax, 0
je test_end
c_b_2:
jmp use
test_end:
add si, 2
cmp cx, si
jb c_b_2
mov byte ptr [si+1], 0
OPEN_F:
mov ah, 3dh ;и прочитать в буфер файл
mov al, 2 ;source_file
mov dx, NameSouOff
int 21h
jnc yes_open
int 20h
yes_open:
mov bx, ax
mov hand_2, ax
mov ah, 42h
xor cx, cx
xor dx, dx
mov al, 2
int 21h
jnc yes_p_1
cn_mov_2:
int 20h
yes_p_1:
mov word ptr len_s, ax
mov ah, 42h
xor cx, cx
xor dx, dx
mov al, 0
int 21h
jc cn_mov_2
mov ah, 3Fh
lea dx, buff
mov cx, word ptr len_s
int 21h
jnc open_targ
int 20h
OPEN_TARG ;Открыть target_file
mov ah, 3Dh
mov al, 2
mov dx, NameTarOff
int 21h
jnc det_len_1
int 20h
det_len_1:
mov hand_1, ax
mov bx, hand_1
mov ah, 42h
xor cx, cx
xor dx, dx
mov al, 2
int 21h
jnc rest_len
jmp cn_mov_1
rest_len:
mov len_t_1, dx
mov len_t_2, ax
TO_PROC: ;Если target_file - COM,
cmp type_t, 0 ;то CALL WR2COM.
je c_com ;Если target_file - EXE,
call wr2exe ;то CALL WR2EXE.
jmp short CLOSE_F
c_com:
call wr2com
CLOSE_F:
mov ah, 3Eh ;source_file и target_file
mov bx, hand_1
int 21h
jnc cl_2
int 20h
cl_2:
mov ah, 3Eh
mov bx, hand_2
int 21h
jnc OK
int 20h
OK:
mov ah, 9
int 20h
det_type proc ;Подпрограммы
mov bp, sp
push ax
push cx
push di
xor ax, ax
lea di, ext_a
loo_1:
push si
push di
mov cx, 3
repe cmpsb
jne end_loo_1
pop di
pop si
mov [bp+2], ax
jmp d_ret
end_loo_1:
inc al
pop di
add di, 3
pop si
cmp al, 2
jb loo_1
mov [bp+2], ax
d_ret:
pop di
pop cx
pop ax
ret
det_type endp
wr2exe proc
push ax
push bx
push cx
push dx
push si
push di
jmp st_2exe
hdr label byte
dw ?
PartPag dw ?
PageCnt dw ?
dw ?
HdrSize dw ?
dw 5 dup(?)
ExeIP dw ?
ReloCS dw ?
len_hdr equ $-hdr ;Команды, записываемые
imit label byte ;в конец файла
mov ax, es ;Команды записи в стек
I_1:
add ax, 0
add ax, 10h
push ax
I_2:
mov ax, 0
push ax ;Команды пердачи управления
mov ax, 100h ;source_file, как и для COM
push ax ;файла
db 0C3h
len_imit equ $-imit
st_2exe:
mov ah, 42h ;Читать заголовок EXE-файла
mov bx, hand_1 ;Установить указатель на
xor cx, cx ;начало файла
xor dx, dx
mov al, 0
int 21h
jc cn_mov_1
mov ah, 3Fh
lea dx, hdr
mov cx, len_hdr
int 21h
jnc prep_end
cn_r_1:
int 20h
prep_end:
mov ax, ReloCS ;в конец файла target_file
mov word ptr i_1[1], ax ;Записать в стек адреса
mov ax, ExeIP ;начала EXE-файла
mov word ptr i_2[1], ax ;Передать управление файлу
mov cx, len_t_1 ;source_file по соглашениям
mov dx, len_t_2 ;системы DOS
mov si, cx ;Записать команды в конец
mov di, dx ;EXE-файла
mov ah, 42h
mov al, 0
mov bx, hand_1
int 21h
jnc yes_wr
cn_mov_1:
int 20h
yes_wr:
mov ah, 40h
lea dx, imit
mov cx, len_imit
int 21h
jnc wr_sour
cn_w_1:
int 20h
wr_sour:
mov cx, si ;EXE-файла
mov dx, di
add dx, len_imit
jnc m1
inc cx
m1:
add dx, 15
jnc m2
inc cx
m2:
and dx, 0FFF0h
mov si, cx
mov di, dx
mov ah, 42h
mov al, 0
int 21h
jc cn_mov_1
mov ah, 40h
lea dx, buff
mov cx, len_s
int 21h
jc cn_w_1
mov ax, si
mov bx, di
add bx, ax
mov cl, 4
ror bx, cl
sub bx, 10h
sub bx, HdrSize
mov ReloCS, bx
mov ax, PartPag
and ax, 000Fh
mov bx, ax
add ax, len_imit
add ax, 15
and ax, 0FFF0h
add bx, 100h
sub bx, ax
mov ExeIP, bx
mov ax, si
mov bx, di
add bx, len_s
Информация о работе Защита данных от несанкционированного доступа