ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Статьи (https://forum.antichat.xyz/forumdisplay.php?f=30)
-   -   Разбор MBR LOCKER (https://forum.antichat.xyz/showthread.php?t=340915)

[ Dumi ] 08.07.2012 15:32

Статья не понравилась, с автором не согласен.

Chrome~ 08.07.2012 17:52

Цитата:

Сообщение от [ Dumi
"]
[ Dumi ] said:
Статья не понравилась, с автором не согласен.

Очень аргументированная критика.

Не совсем понятно, почему используем сектора 1, 3, 4 а не 1, 2, 3. Также не очень понравилось, как описана работа ассемблерного кода. Лучше комментировать каждую строчку, а не писать в таком стиле:

Цитата:

Сообщение от DooD
Загрузка таблицы в память
Код:

mov ah,0x02
mov al,0x02
mov bx,0x1000
mov cx,0x0003
int 0x13

Вторая ф-я 13 прерывания- чтение секторов
-читаем 2 сектора (3 и 4)
-записываем таблицу по адресу 0х1000
-чтение начинаем с 3-го сектора.

Когда читаешь эти строки:

Цитата:

Сообщение от DooD
Код:

[BITS 16]
[ORG 0x7C00]

указываем на 16 битный код и устанавливаем "нужный" адрес.

возникает вопрос, можно ли использовать 32-битный код?

DooD 08.07.2012 18:52

Цитата:

Сообщение от Chrome~
Очень аргументированная критика.
Не совсем понятно, почему используем сектора 1, 3, 4 а не 1, 2, 3. Также не очень понравилось, как описана работа ассемблерного кода. Лучше комментировать каждую строчку, а не писать в таком стиле:
Когда читаешь эти строки:
возникает вопрос, можно ли использовать 32-битный код?

можно использовать любые сектора,просто мне так захотелось.по правильному если, нужно искать сектора в которых нет данных(то есть нули) и писать туда.

Комментировал так:

строка асм кода-строка комента.

использовать 32 битный нельзя,т.к. мы в реальном режиме,для использования 32 битн. надо включать линию А20

Gar|k 10.07.2012 16:45

Цитата:

Сообщение от DooD
размер сектора =512 байт.

Не всегда, для определение размера сектора можно воспользоватся информацией из геометрии диска.

В свое время писал программу установщик, которая генерирует код "на лету" используя заранее заготовленные смещения в ассемблерном коде.

http://c0dedgarik.blogspot.com/2010/10/blog-post.html


Время: 13:17