У меня нет компилятора Borland под рукой, поэтому я могу неправильно запоминать его синтаксис, но вы пробовали это:
asm {
mov ax,4 // (I/O Func.)
mov bx,1 // (Output func)
lds cx,"Hello, world" // (address of the string)
mov dx,6 // (length of the string)
int 0x21 // system call
}
или это:
char msg[] = "Hello, world";
asm {
mov ax,4 // (I/O Func.)
mov bx,1 // (Output func)
lds cx, msg // (address of the string)
mov dx,6 // (length of the string)
int 0x21 // system call
}
edit: хотя это скомпилируется (теперь, когда я изменил MOV на LDS), оно все равно выдаст ошибку во время выполнения. Я попробую еще раз ...