ВУЗ:
Составители:
106
sprit0 proc near
; Стирание четных строк
mov di,addr0
mov ax,0b800h
mov es,ax
mov bp,8 ; Счетчик числа строк/2
xor al,al
sp3: mov cx,4 ; Счетчик числа слов
rep stosb
add di,76
dec bp
jnz sp3
; Стирание нечетных строк
mov di,addr0
mov ax,0ba00h
mov es,ax
mov bp,8 ; Счетчик числа строк/2
sp4: mov cx,4 ; Счетчик числа слов
rep stosb
add di,76
dec bp
jnz sp4
ret
sprit0 endp
code ends
END Start ; Указание точки входа в программу
3.6 Работа с жестким диском
Написать программу, которая при первом запуске (инициализации)
определяет начальный кластер своего расположения на диске, записывает в
файл на диск этот номер и выполняет свою основную функцию – выводит
сообщение на экран, что все в порядке. При повторном и последующих
запусках программа должна проверять, соответствует ли записанный в
ней
при инициализации номер начального кластера действительному номеру.
При совпадении программа должны выполнить свою основную функцию –
вывести сообщение о том, что все в порядке. При несовпадении
записанного в программе и действительного номеров начального кластера
программа должна вывести на экран сообщение о нежелании работать.
Assume CS: Code;, DS: Code
Code SEGMENT
bpb struc ; Структура блока параметров BIOS
sect_siz dw ? ; Размер сектора в байтах
clus_siz db ? ; Секторов в кластере
res_sect dw ? ; Зарезервированных секторов
fat_num db ? ; Кол-во FAT на диске
root_siz dw ? ; Размер каталога (кол-во файлов)
num_sect dw ? ; Общее количество секторов
106
sprit0 proc near
; Стирание четных строк
mov di,addr0
mov ax,0b800h
mov es,ax
mov bp,8 ; Счетчик числа строк/2
xor al,al
sp3: mov cx,4 ; Счетчик числа слов
rep stosb
add di,76
dec bp
jnz sp3
; Стирание нечетных строк
mov di,addr0
mov ax,0ba00h
mov es,ax
mov bp,8 ; Счетчик числа строк/2
sp4: mov cx,4 ; Счетчик числа слов
rep stosb
add di,76
dec bp
jnz sp4
ret
sprit0 endp
code ends
END Start ; Указание точки входа в программу
3.6 Работа с жестким диском
Написать программу, которая при первом запуске (инициализации)
определяет начальный кластер своего расположения на диске, записывает в
файл на диск этот номер и выполняет свою основную функцию – выводит
сообщение на экран, что все в порядке. При повторном и последующих
запусках программа должна проверять, соответствует ли записанный в ней
при инициализации номер начального кластера действительному номеру.
При совпадении программа должны выполнить свою основную функцию –
вывести сообщение о том, что все в порядке. При несовпадении
записанного в программе и действительного номеров начального кластера
программа должна вывести на экран сообщение о нежелании работать.
Assume CS: Code;, DS: Code
Code SEGMENT
bpb struc ; Структура блока параметров BIOS
sect_siz dw ? ; Размер сектора в байтах
clus_siz db ? ; Секторов в кластере
res_sect dw ? ; Зарезервированных секторов
fat_num db ? ; Кол-во FAT на диске
root_siz dw ? ; Размер каталога (кол-во файлов)
num_sect dw ? ; Общее количество секторов
Страницы
- « первая
- ‹ предыдущая
- …
- 104
- 105
- 106
- 107
- 108
- …
- следующая ›
- последняя »
