공부중에 8051이라는걸 하다가
C랑은 좀 다른것 같아서요
예제를 만들었는데 제가 8051에서는 어떻게 코드를 작성하는지 몰라
일단은 일반적인 C로 작성을 했습니다.
아래 코드를 8051로 바꾸면 많이 달라지나요??
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
int main(){
int* R0 = NULL; //동적할당 초기화
int R1, R2; //R1: 배열의 크기 && R2: 배열의 전체 공간값R3: 마지막 주소값
int* R3; //R3: 마지막 주소값
int i, max; //i: for문용 && max: 최대값 데이터 저장
printf("배열의 크기를 입력하세요: ");
scanf("%d", &R1);
R0 = (int*)malloc(sizeof(int)*R1);
if(R0 == NULL){
printf("메모리가 부족합니다.");
return 0;
}
printf("각 배열에 0 - %d 범위의 데이터로 랜덤하게 부여됩니다.\n", R1);
srand((unsigned int)time(NULL));
for(i=0; i<R1; i++){
R0[i] = rand() % R1;
}
for(i=0; i<R1; i++){
printf("%4d ", R0[i]);
if(i%10==9) printf("\n");
}
max = R0[i];
for(i=0; i<R1; i++){
if(max < R0[i]) max = R0[i];
}
R2 = R1 * sizeof(R0);
R3 = &R0[R1-1];
printf("\n\n데이터 최대값: %d\n", max);
printf("배열의 공간: %d\n", R2);
printf("배열의 마지막 주소값: 0x%08x", R3);
printf("\n\n");
free(R0);
return 0;
}