Size: a a a

2020 March 28

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in pro.asm
хотя для понятности кода можно и virtual
источник

ЕК

Евгений Красников (Jin X) in pro.asm
d1vunit
все равно ваш совет не рабочий ругается  fasm
Странно, у меня не ругается :)
источник

ЕК

Евгений Красников (Jin X) in pro.asm
d1vunit
struc TSS {

   .limit dw 0x100
   .adrlow dw ?
   .adrcenter db ?
   .conffield1 db ?
   .conffield2 db ?
   .adrhigh db ?
   
}

set_task:

   virtual at esi
   
   .esi TSS
   
   end virtual

   test bl,bl
   jnz .user

.kernel:

   mov byte [esi.conffield1],10001001b

.user:

   mov byte [esi.conffield1],11101001b

.continue:

   mov word [esi.adrlow],dx
   shr edx,16
   mov byte [esi.adrcenter],dl
   mov byte [esi.conffield2],10000000b
   shr dx,8
   mov byte [esi.adrhigh],dl
   retn
Надо поставить точку перед esi: вместо esi.xxx писать .esi.xxx.
источник
2020 March 30

RG

R G in pro.asm
привет это что за соглашение о вызове использует функция?
источник

RG

R G in pro.asm
В одной статье вот это компильнули клангом и получили то что на фотке выше..

// Compile me with: clang -c mul.c -o mul.o
int mul (int a, int b) {
   return a * b;
}
источник

d

d1vunit in pro.asm
си соглашение
источник

RG

R G in pro.asm
это не _cdecl точно
источник

RG

R G in pro.asm
но не знаю что
источник

K

Kitsu in pro.asm
вообще выглядит как обычный system v abi, только почему-то на 32 битах
источник

RG

R G in pro.asm
Kitsu
вообще выглядит как обычный system v abi, только почему-то на 32 битах
почему тогда параметры передаются не через стек, а в esi edi кладутся? Ну в данном примере
источник

K

Kitsu in pro.asm
в sys v параметры и идут через регистры
источник

RG

R G in pro.asm
Kitsu
вообще выглядит как обычный system v abi, только почему-то на 32 битах
там 64 бита просто тк инт 4 байта esi edi
источник

RG

R G in pro.asm
аа понял спасибо. Оказывается на 32 битном систем в аби параметры по стеку идут а в 64 битном по регистрам сначала
источник

RG

R G in pro.asm
источник

ЕК

Евгений Красников (Jin X) in pro.asm
В 64-битном одно соглашение (для каждой ОС).
Это в 32-битном их вагон.
источник

K

Kitsu in pro.asm
Евгений Красников (Jin X)
В 64-битном одно соглашение (для каждой ОС).
Это в 32-битном их вагон.
windows + wsl?
источник

K

Kitsu in pro.asm
ну и вообще кажется winapi на cdecl сидит, хотя либы в ms линкуются по другому соглашению
источник

ЕК

Евгений Красников (Jin X) in pro.asm
Kitsu
windows + wsl?
Что windows + wsl ?
источник

K

Kitsu in pro.asm
Это ведь одна ось, а abi линуксовое и виндовое
источник

ЕК

Евгений Красников (Jin X) in pro.asm
Kitsu
ну и вообще кажется winapi на cdecl сидит, хотя либы в ms линкуются по другому соглашению
Как он может на cdecl сидеть, а линковаться по-другому?
источник