Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[C++] borland C++ 3.1.Оператор присвоения не работает??? 10.10.03 21:32 Число просмотров: 1427
Автор: Cyril <sc> Статус: Member
|
> Кто что может сказать по этому поводу? > ps DOS программа. компилятор - сабж.
Попробовал получить асмовый листинг
из такой программы
#include <stdio.h>
void main(void) {
extern unsigned char buff512_r[512];
unsigned long table[256];
char* chain_ptr= (char*)table[buff512_r[0]];
printf(chain_ptr);
}
bcc 5.1.1
; extern unsigned char buff512_r[512];
; unsigned long table[256];
; char* chain_ptr= (char*)table[buff512_r[0]];
;
@1:
xor eax,eax
mov al,byte ptr [_buff512_r]
mov eax,dword ptr [ebp+4*eax-1024]
turbo C 3.0
; extern unsigned char buff512_r[512];
; unsigned long table[256];
; char* chain_ptr= (char*)table[buff512_r[0]];
;
mov al,byte ptr DGROUP:_buff512_r
mov ah,0
shl ax,2
lea dx,word ptr [bp-1028]
add ax,dx
mov bx,ax
mov ax,word ptr ss:[bx+2]
mov dx,word ptr ss:[bx]
mov word ptr [bp-2],ax
mov word ptr [bp-4],dx
Все вроде бы так и должно быть
З.Ы. какую модель памяти ты используешь при компиляции
|
|
|