C 36

Cortex-A9에서 TLB 효과 측정

Cortex-A9에서 TLB 효과 측정 다음 논문 https://people.freebsd.org/ ~lstewart/articles/cpumemory.pdf("모든 프로그래머가 메모리에 대해 알아야 할 것")를 읽고 저자의 테스트 중 하나, 즉 TLB가 최종 실행 시간에 미치는 영향을 측정하는 것을 시도해보고 싶었습니다. 저는 코텍스-A9를 내장한 삼성 갤럭시 S3를 제작하고 있습니다. 설명서에 따르면: L1(http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Chddiifa.html)에 명령 및 데이터 캐시용 마이크로 TLB가 2개 있습니다. 기본 TLB는 L2(http://infocenter.arm.com/help/index.j..

programing 2023.07.23

초기화(C) 시 0.0f의 의미는 무엇입니까?

초기화(C) 시 0.0f의 의미는 무엇입니까? 나는 사람들이 float 변수를 다음과 같이 초기화하는 코드를 본 적이 있습니다. float num = 0.0f; 이 작업과 아래의 작업 사이에 상당한 차이가 있습니까? float num = 0; 감사합니다.:)float x = 0에는 int에서 float로 암시적 유형캐스트가 있습니다. float x = 0.0f에는 이러한 유형 캐스트가 없습니다. float x = 0.0에는 이중에서 부동으로 암시적 유형 캐스트가 있습니다. 컴파일러에 따라 암묵적 typecast를 사용하려면 컴파일러가 추가 코드를 생성해야 할 수 있습니다.아마도 그 이유는 그들이 다음과 같은 것을 썼기 때문일 것입니다. float f = 1 / i; // i an integer 그것을 디..

programing 2023.07.13

동적 프로그래밍 - 최대 사각형 블록

동적 프로그래밍 - 최대 사각형 블록 저는 1과 0으로 가득 찬 거대한 파일에서 1의 가장 큰 정사각형을 찾아야 합니다.동적 프로그래밍을 사용해야 한다는 것을 알고 있습니다.나는 그것을 2D 어레이에 저장하고 있습니다.가장 큰 사각형을 찾기 위한 알고리즘에 도움이 된다면 정말 좋을 것입니다, 감사합니다! 입력 예: 1 0 1 0 1 0 1 0 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 답변: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 지금까지 내 코드: int Square (Sq[int x][int y]) { if (Sq[x][y]) == 0) { return 0; } else { return 1+MIN( Sq(X-1,Y), Sq(X,Y-1), Sq(X-..

programing 2023.07.08

int*i와 int*i의 차이

int*i와 int*i의 차이 DLL을 사용할 수 있도록 C로 작성된 DLL의 헤더 파일을 Delphi로 변환하고 있습니다. 내 질문은 사이의 차이점이 무엇인가 하는 것입니다. int* i 그리고. int *i 첫 번째를 로 변환합니다. i: PInteger; 하지만 저는 델파이의 두 번째 것에 대한 정확한 변환이 무엇인지 잘 모르겠습니다. 제가 알기로는 첫 번째는 간단한 타자 포인터입니다.두 번째는 포인터 변수입니다.하지만 무엇이 다른지는 잘 모르겠습니다.C에 관한 한 그들은 둘 다 같은 일을 합니다.그것은 기호의 문제입니다. int* i는 int 포인터 유형임을 명확히 보여줍니다. int *i에서는 별표가 단일 변수에만 영향을 미친다는 사실을 보여 줍니다.그렇게int *i, j그리고.int* i, j..

programing 2023.06.18

C의 for(;;) 루프에서 여러 변수를 선언하려면 어떻게 해야 합니까?

C의 for(;;) 루프에서 여러 변수를 선언하려면 어떻게 해야 합니까? 나는 하나가 몇 가지 변수를 선언할 수 있다고 생각했습니다.for루프: for (int i = 0, char* ptr = bam; i < 10; i++) { ... } 하지만 저는 이것이 불가능하다는 것을 방금 알았습니다.GCC에서 다음 오류가 발생합니다. 오류: 'char' 앞에 정규화되지 않은 ID가 필요합니다. 다른 유형의 변수를 선언할 수 없다는 것이 정말 사실입니까?for루프?로컬 구조체 유형을 사용할 수 있지만 일반적으로 사용해서는 안 됩니다. for ( struct { int i; char* ptr; } loopy = { 0, bam }; loopy.i < 10 && * loopy.ptr != 0; ++ loopy.i,..

programing 2023.06.18

왜 C는 C99 이전에 부울 데이터 유형이 없었습니까?

왜 C는 C99 이전에 부울 데이터 유형이 없었습니까? 당신이 할 수 있다는 것을 알아요#define일부 정수이지만, C는 C99 이전에 전용 부울 데이터 유형을 가지고 있지 않은 이유는 무엇입니까? 프로그래밍과 논리학에서 너무나 흔한 일이기 때문에 명시적인 유형과 표기법이 없다는 것을 이해할 수 없습니다.도서관에서 약간의 시간을 보낸다면, 여러분은 추측할 필요가 없습니다.다음은 Dennis Ritchie의 C의 진화에 관한 논문에서 발췌한 몇 가지 진술입니다.맥락은 데니스가 Ken Thompson의 언어 B를 기반으로 하고 있다는 것입니다. 이것은 아주 작은 PDP-7이라는 단어 주소 기계에서 구현되었습니다.증가하는 관심 때문에, 그 그룹은 최초의 PDP-11 중 하나를 얻었습니다.데니스는 다음과 같이..

programing 2023.06.08