구구단 구현하기 - 기획

프로그램 기획

구구단 프로그램을 작성하기 위해서는 아래의 기능을 구현해야 한다.

  1. 이용자 입력 처리
  2. 구구단 출력

b2e9a9b633ed2e9f44862a668c5e8c3b914bd3b198d0e2fb6423b8b15dbb083c.png

5fd3197ec634e38a7ea6573b83562579d2ecb24b4f9181055d637c032a6665cd.png

세부 구현은 다음이 필요하다.

  1. 반복문

  2. 개행 문자(\n) 처리

  3. 문자열의 정수 변환

    **호너의 법칙

    호너의 법칙(Horner’s method)** 또는 **호너의 방법(Horner’s rule)**은 다항식을 표현하는 방법 중 하나로, 다항식을 중첩된 형태로 바꿔 한 번의 순회로 계산할 수 있게 만드는 기법이다. 이 방법을 이용하면 지수 연산을 명시적으로 수행하지 않고도, 계수를 차례대로 곱셈/덧셈해 나가면서 최종 값을 얻을 수 있어 메모리 효율성이 좋다. 아래는 다항식 P(x)를 호너의 법칙으로 나타내는 예시이다.

    $$ P(x) = a_0 + a_1x + a_2x^2 + ... + a_nx^n = a_0 + x(a_1 + x(a_2 + x(... + x(a_n-1 + xa_n)...))) $$


구구단 구현하기 - 구현

.data/.bss 섹션 정의

프로그램의 기능을 구현하기 전, 입출력에 사용될 문자열 데이터와 상수를 정의해야 한다.

데이터 세그먼트(Data Segment)에는 값이 정해진, 즉 초기화가 된 전역 변수와 상수들이 위치한다. 따라서 .data 섹션에 프로그램에 사용될 상수 문자열들과 전역 변수 및 상수를 정의한다. 일반적으로 상수 문자열은 .rodata 섹션에 정의된다.