Tôi là người mới viết bộ nạp khởi động. Tôi đã viết một bộ tải khởi động helloworld trong asm, và Tôi hiện đang cố gắng viết một trong C. Tôi đã viết một bộ nạp khởi động helloworld trong C, nhưng tôi không thể biên dịch nó.Viết bộ nạp khởi động vào C
Đây là mã của tôi. Tôi đang làm gì sai? Tôi có sử dụng sai cách tiếp cận hoàn toàn không?
void print_char();
int main(void){
char *MSG = "Hello World!";
int i;
__asm__(
"mov %0, %%SI;"
:
:"g"(MSG)
);
for(i=0;i<12;i++){
__asm__(
"mov %0, %%AL;"
:
:"g"(MSG[i])
);
print_char();
}
return 0;
}
void print_char(){
__asm__(
"mov $0X0E, %AH;"
"mov $0x00, %BH;"
"mov $0x04, %BL;"
"int $0x10"
);
}
hướng dẫn tuyệt vời.Cảm ơn bạn –