20947

Запис і читання інформації в інженерні циліндри диска

Лабораторная работа

Информатика, кибернетика и программирование

MODEL SMALL STS segment para stack 'stack' dw 1000 dup 0 TOS label word STS ends DATA segment track80 db 801011 ;дорожкаголовкасектордлина сектора db 801021 db 801031 db 801041 db 801051 db 801061 db 801071 db 801081 db 801091 db 801101 db 801111 db 801121 db 801131 db 801141 ;таблица параметров контроллера дисководов DCP db 0DFh ;задержка переключения головок0Dh=3мс ;задержка при загрузке головокFh db 002h ;время загрузки=4мс db 025h ;задержка перед выключением двигателя db 001h ;размер...

Украинкский

2013-08-01

53.38 KB

2 чел.

Міністерство освіти, науки, молоді та спорту України

Національний технічний Університет “ХПІ”

“ХАРКІВСКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ”

Кафедра “ Обчислювальна техніка та програмування ”

Лабораторна робота №2

по курсу “Захист інформації у комп’ютерних системах та мережах”

 

                                                                                                Виконав:

                                                                                                      ст. гр КІТ 39

                                                                                                      Родін С.І

                                                                                                 Перевірив:

                                                                                                 Межерицький С.Г

Харків 2012

“Запис і читання інформації в інженерні циліндри диска”

за курсом “Захист інформації у комп’ютерних системах та мережах”

Ціль роботи : придбання навичок роботи з нестандартними можливостями дисків на низькому рівні.

Постановка задачі: необхідно розробити і налагодити програму що дозволяє виконати форматування інженерних секторів дискети, запис, читання і перевірку якості виконання операція з цими секторами.

Індивідуальні завдання

номер по журналі 15

у таблиці форматування рядок з кодом 6 

структура доріжки (1-10):

256,256, 256, 256,512, 512,1024,1024,1024. 

номер доріжки 81 

сторона 0

N = 15 

L = 17

off1 = 15

off2 = 128 – 43 – 15 = 70

.MODEL SMALL

STS segment para stack 'stack'

dw 1000 dup (0)

TOS label word

STS ends

DATA segment

track80 db 80,1,01,1 ;дорожка,головка,сектор,длина сектора

db 80,1,02,1

db 80,1,03,1

db 80,1,04,1

db 80,1,05,1

db 80,1,06,1

db 80,1,07,1

db 80,1,08,1

db 80,1,09,1

db 80,1,10,1

db 80,1,11,1

db 80,1,12,1

db 80,1,13,1

db 80,1,14,1

;таблица параметров контроллера дисководов

DCP db 0DFh ;задержка переключения головок(0Dh=3мс)

;задержка при загрузке головок(Fh)

db 002h ;время загрузки(=4мс)

db 025h ;задержка перед выключением двигателя

db 001h ;размер сектора(=256б)

db 00Dh ;max номер сектора

db 01Bh ;размер межсекторного промежутка(=1б)

db 0FFh ;характеризует использование прерывания данных

db 054h ;длина межсекторного промежутка для команды format

db 0F6h ;байт заполнения

db 00Fh ;время установки головок

db 008h ;время запуска двигателя(=1/8сек)

Firm db 'write 01 sector $',0 ;определение записываемой

db 256-27 dup (?) ;информации

Msg_Err db 'Ошибка записи',13,10,'$'

Msg_Ok db 'Запись выполнена',13,10,'$'

buf db 256 dup (?)

db '$'

msg_buf db 10,13,"Содержимое сектора после записи:",13,10,'$'

msg_read db 'Ошибка чтения',13,10,'$'

DATA ends

CODE segment

assume cs:code, ds:data, es:data, ss:sts

start: mov ax,DATA

mov ds,ax

mov es,ax

mov ax,sts

mov ss,ax

mov sp,offset TOS

;переустановка параметров дисководов

mov ah,35h

mov al,1Eh ;номер прерывания : этот вектор указывает на таблицу

;параметров дискеты

int 21h ;возвращает в ES:BX адрес программы обработки прерывания

push bx

push es

mov ah,25h

mov al,1Eh ;номер прерывания

lea dx,DCP ;в DS:DX вектор прерывания,указывающий на таблицу

int 21h ;установка новых значений

;оформление инженерного цилиндра

push ds

pop es

lea bx,track80 ;адрес буфера, содержащего информацию о формате

mov ah,05h ;функция формата дорожки

;в CX - номер нужного цилиндра

mov cl,00h ;cl - биты 6-7 - старшие 2 бита 10-битного значения

mov ch,50h ;ch - младшие 8 бит

mov dl,00h ;адрес дисковода(A:)

mov dh,01h ;номер головки

int 13h ;формат

jc Error_Exit

;управление названием Firm

mov bx,offset Firm

mov cl,01h ;номер сектора,в который записывать Firm

call Write_Info

jc Error_Exit

mov dx,offset Msg_Ok

mov ah,09h

int 21h

;вывод на экран содержимого записанного сектора

mov ah,9

mov dx,offset msg_buf

int 21h

mov ah,02h

mov al,01h

mov ch,50h

mov cl,01h

mov dl,00h

mov dh,01h

mov bx,offset buf

int 13h

jc err_read

mov ah,09h

mov dx,offset buf

int 21h ;вывод содержимого буфера на экран

jmp label_end

;восстановление старых параметров дисковода

msg_c: mov ah,9h

int 21h

label_end:

pop ds

pop dx

mov ah,25h

mov al,1Eh

int 21h

mov ah,4Ch

int 21h

Error_Exit:

mov dx,offset Msg_Err

jmp Msg_c

err_read:

mov dx,offset msg_read

jmp Msg_c

;запись физического сектора

Write_Info proc

push bx ;указывает на строку

push cx ;номер того сектора, куда записывать

mov ah,03h

mov al,01h ;количество секторов

mov ch,50h ;номер цилиндра

mov dl,00h ;дисковод

mov dh,01h ;головка

int 13h ;запись сектора

jc Escp

pop cx

pop bx

;проверка записи на CRC

mov ah,04h

mov al,01h ;количество секторов

mov ch,50h

mov dl,00h

mov dh,01h

int 13h ;верификация сектора (CRC check)

Escp: ret

Write_Info endp

CODE ends

end start

Висновок: придбав навичоки роботи з нестандартними можливостями дисків на низькому рівні


 

А также другие работы, которые могут Вас заинтересовать

63661. ВНЕБЮДЖЕТНЫЕ ФОНДЫ 170 KB
  Сущность и назначение Пенсионного фонда РФ. Сущность и назначение фонда Социального страхования РФ. Внебюджетные фонды создаются двумя путями: выделение из бюджета определенных расходов имеющих особо важное значение; формирование внебюджетного фонда с собственными источниками доходов.
63662. ФИЛОСОФСКОЕ УЧЕНИЕ О БЫТИИ. БЫТИЕ КАК ФИЛОСОФСКАЯ КАТЕГОРИЯ 227 KB
  С одной стороны тело человека представляя собой средоточие высокоорганизованной материи в определенный момент своего развития с неизбежной необходимостью перейдет в небытие перестанет существовать как живой организм.
63663. Определение массы плутония и доли в нём 239Pu 1.88 MB
  Определение умножения нейтронов в подкритических состояниях размножающих сред представляет интерес с точки зрения как безопасности так и контроля и учёта делящихся материалов. Возможность определения умножения нейтронов существенно расширяет возможности такого контроля.
63664. Право: понятие, признаки 222.08 KB
  Право – это система общеобязательных формально-определенных норм, установленных и охраняемых государством, выражающих волю народа или иных социальных групп и направленных на регулирование общественных отношений.
63666. Aggregate demand and Keynesian multiplier 417 KB
  In the model AD-AS the interest rate is an exogenous variable. The main purpose of the IS-LM model is to integrate money market and goods market into the single system. Thus, interest rate turns into endogenous variable. IS-LM – a model of money-goods equilibrium which helps to define factors influencing AD.
63668. Норма права 202.28 KB
  Общеобязательность. Норма права предписывает правильный и обязательный образ действий. Носит общий характер, выступает в качестве равного одинакового правила для всех и каждого, кто оказывается в сфере ее действия.