Вниз
Скачать: CL | DM;

Hello world в ассме   Найти похожие ветки 

← →
Defunct ©   (2006-02-19 20:47) [40]

ArtemESC ©   (19.02.06 20:40) [39]

ззз bp используется не по назначению.. уже отмечал в [20]..
сделайте хотя бы так:

    mov  ax, 07Ch    
    mov  ds, ax        
    mov  si, offset s  
    mov  cx, len      
    mov  di, 0B800h  
    mov  es, di
    xor   di, di
  J:      
    lodsb
    stosw            
    loop J            
    L: jmp L          

s  db "Hello world!!!"


← →
Чародей ©   (2006-02-19 22:35) [41]


> ззз bp используется не по назначению

И какое же такое назначение у bp?, что за предрассудки??


← →
kaZaNoVa ©   (2006-02-19 22:50) [42]

а как компилять и юзать сабж?))


← →
ArtemESC ©   (2006-02-19 23:56) [43]

kaZaNoVa ©   (19.02.06 22:50) [42]
1) Компилировать masm-ом
2) Вырезать код с данными из exe-шника
{может можно скомпить просто бинарный файл - но я незнаю как}
3) Дальше набить им Boot дискеты
{В связи с малостью размера - я сделал это вручную,
         прямо с первого байта первого сектора (Делал это я DskPatch-ем),
    Главное что-бы первый сектор имел последнии два байта: 55 AA - то
  есть загрузочный}
4)Перезагружаем PC, устанавливаем в BIOS в качестве загрузочного -   Floppy-к.
5)После POST BIOS-a должно появится Hello World в левом верхнем углу...


← →
Kerk ©   (2006-02-20 00:02) [44]

ArtemESC ©   (19.02.06 23:56) [43]
1) Компилировать masm-ом
2) Вырезать код с данными из exe-шника


Лучше
1) Выбросить masm, взять tasm
2) Компилировать com-файл


← →
ArtemESC ©   (2006-02-20 00:06) [45]

>>Kerk ©   (20.02.06 00:02) [44]
Согласись com-файл это еще не конечный продукт..


← →
Kerk ©   (2006-02-20 00:12) [46]

ArtemESC ©   (20.02.06 0:06) [45]
Согласись com-файл это еще не конечный продукт..


Именно конечный. Берешь его и записываешь в бут-сектор как есть.


← →
Чародей ©   (2006-02-20 00:20) [47]


> Согласись com-файл это еще не конечный продукт..

Если откроешь com в любом Disasm"е то увидишь что код идет с первого байта, без заголовков


← →
Defunct ©   (2006-02-20 00:36) [48]

Чародей ©   (19.02.06 22:35) [41]

никаких предрассудков, bp - поумолчанию адресует ss.
bx, si, di - ds
es:di - для адресации destination в строковых командах

код получится эффективнее (без префиксов сегмента) если использовать сегментные регистры с сопоставленными им  по назначению.

es:[bp] это такой же дурной тон в ассемблере как использование goto в паскале.

ArtemESC ©   (20.02.06 00:06) [45]
COM это конечный продукт, который можно непосредственно записывать в boot. Честно говоря я уже паражаюсь вашему упортсву игнорирования всех моих рекомендаций и примеров..


← →
Vendict ©   (2006-02-20 15:57) [49]

ArtemESC ©   (19.02.06 20:18) [37]
Честно говоря искал - все что нашел привело к еще
большим вопросам...

Здесь был ?
http://www.citforum.ru/programming/digest/realhello.shtml


← →
Игорь Шевченко ©   (2006-02-20 17:11) [50]

ArtemESC ©   (19.02.06 20:18) [37]


> Надоело копить "теорию" -
>      почитал книжки, статьи, имею некоторый опыт в Windows
> с асм-ом
>  - на фига мне все ето...


Ну не в коня корм, бывает...


← →
VirEx ©   (2006-02-20 20:25) [51]


>  [47] Чародей ©   (20.02.06 00:20)
> Если откроешь com в любом Disasm"е то увидишь что код идет
> с первого байта, без заголовков

ну блин это же не PE! это COM, "исполняемый файл образа памяти"



Страницы: 1 2 вся ветка

Скачать: CL | DM;



Память: 0.54 MB
Время: 0.033 c
4-1134903687
Dark Lord
2005-12-18 14:01
2006.03.12
Определение русскоязычных шрифтов


2-1140507399
Helen
2006-02-21 10:36
2006.03.12
Разноцветные строки в DBCtrlGrid


15-1139423173
Marser
2006-02-08 21:26
2006.03.12
О пользе высшего образования


15-1140191596
Vendict
2006-02-17 18:53
2006.03.12
Передача параметра процедуре по ссылке в ассемблере


15-1140370249
Stas_on
2006-02-19 20:30
2006.03.12
Светодиоды и COM-порт




   Наверх