• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Показать координаты 1-го основного раздела жесткого диска в Chs виде

  • Автор темы DJEDY
  • Дата начала
Статус
Закрыто для дальнейших ответов.
D

DJEDY

Мне нужно показать координаты 1-го основного раздела жесткого диска в CHS виде. Код чтения сектора я с горем пополам написал и он работает:

dseg segment
buffer db 512 dup(0) ;буфер для размещения данных
text1 db 'yes$'
text2 db 'error!$'
dseg ends
code segment
assume cs:code,ds: dseg,es: dseg
a1: mov ax,dseg
mov ds,ax
mov es,ax
mov ah,2 ;номер функции
mov cx,1 ;номер цилиндра 0, сектора 1
mov dh,0 ;номер головки 0
mov dl,80h ;номер диска
lea bx,buffer ;в bx адрес буфера данных
mov al,1 ;количество считываемых секторов
int 13h ;вызов сервиса
jc err ;при ошибке чтения сообщение 'error!'
lea dx,text1
a2: mov ah,9 ;вывод строки на экран
int 21h
mov ah,4ch ;завершение исполнения
int 21h
err:lea dx,text2
jmp a2
code ends
end a1

Вызывает затруднение вытащить 3 байта отвечающие за координаты ж.д. и перевод их в CHS вид програмно. Подскажите если не трудно))
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!