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

Тема в разделе "Другие", создана пользователем DJEDY, 21 ноя 2009.

Статус темы:
Закрыта.
  1. DJEDY

    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 вид програмно. Подскажите если не трудно))
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей