кто немного знает асм x86-го (+)
(«Телесистемы»: «Конференция «Микроконтроллеры и их применение»»)

миниатюрный аудио-видеорекордер mAVR

Отправлено DASM861 08 мая 2003 г. 13:40


есть файл С
в нем
typedef struct
{
INT16 saveSS;
INT16 saveSP;
INT16 saveRetOffs;
INT16 saveRetSeg;
.............
}CONTEXT;
.............
CONTEXT gContexts[MAX_TASKS]; // массив контекстов задач
есть файл асма - примерно так
_TEXT segment public byte 'CODE'
assume cs:_TEXT
assume ds: nothing
.186
public _SaveContext
extrn _g_curTask
extrn _gContexts
_SaveContext:

mov ax,ss
mov bx,word ptr [_g_curTask]
imul bx,bx,33
mov word ptr _gContexts[bx],ax

mov ax,sp
mov bx,word ptr [_g_curTask]
imul bx,bx,33
mov word ptr _gContexts[bx + 2],ax
и т д

Когда смотрю в TD вижу , что он строку
mov word ptr _gContexts[bx],ax
делает как mov cs:[bx+1d86], ax
ПОЧЕМУ ЧЕРЕЗ CS ?????????????????????
Работает вроде все ОК


Составить ответ ||| Конференция ||| Архив

Ответы



Перейти к списку ответов ||| Конференция ||| Архив ||| Главная страница ||| Содержание

E-mail: info@telesys.ru