컴퓨터 과학은 알고리즘에 관한 것이며 컴퓨터 (및 전자)에 관한 것이 아닙니다.
따라서 알고리즘 연구 (초등 산술조차도)는 컴퓨터 과학과 프로그래밍에 대한 이해를 가져올 수 있습니다. "알고리즘"이라는 용어조차도 arithmetica 저서 ( 알 -Khwārizmī , 9 세기 경) 의 저자의 구절이라는 것을 기억하십시오 .
알고리즘 연구는 기본 수단을 사용하여 수행 할 수 있지만 알고리즘이 작동하는 이유, 발생 방식 및 알고리즘이 올바르게 작동 함을 실제로 입증 할 수있는 방법을 제공해야합니다.
컴퓨터 과학과 알고리즘 및 프로그래밍의 발전에 대한 역사는 과소 평가되어서는 안됩니다. 예를 들어 Babbage / Ada의 계산기, Enigma 기계, Konrad Zuse의 plankalkul , ENIAC 등
그러면 알고리즘을 공식화하는 방법으로 프로그래밍 (및 프로그래밍 언어)을 도입 할 수 있습니다. 이것은 또한 기본 수단을 사용하여 (대부분 확장) 수행 될 수 있습니다.
참고 일부 연구는 프로그래밍을 학습 peole (예 : 평등 시험 대 asignment와 RAM 기계의 작동을위한 상징의 오버로드 관련) 이해하는 두 가지 어려움이있는 것으로 나타났습니다.
- 루프 구문 (예 : for 등)이 어려워 보입니다.
- 할당 대 평등 테스트도 어렵다.
따라서 사람들이이를 명확하게 파악하고 이해할 수 있습니다.
또한 컴퓨터에 액세스 할 수있는 경우 (프로그래밍 할 수있는 계산기도 포함) 응용 사례와 실무 경험을 제공하는 데 사용할 수 있습니다. 다른 사람은 시뮬레이션 컴퓨터를 사용할 수 있습니다. 예를 들어 한 그룹의 사람들이 컴퓨터의 일부를 시뮬레이션 할 수 있고 클래스는이 시뮬레이션 된 컴퓨터의 다양한 문제를 해결하고 어떻게 진행되는지 알 수있는 알고리즘을 설계 할 수 있습니다. 이것은 게임으로도 볼 수 있으며 창의적이고 독창적입니다.
그런 다음 일부 (추상적 인) 계산 모델 (예 : Turing Machines )을 알고리즘에 대한 이전 자료와 형식화 (프로그래밍) 언어로 공식화 할 수 있습니다.
실제 컴퓨터의 전자 장치를 소개하려면 두 부분으로도 할 수 있습니다.
대학에서도 일부 전자 공학 및 컴퓨터 아키텍처 과정은 이론적입니다 (하나는 실제로 CPU와 접촉하거나 설계하지 않습니다).
따라서 컴퓨터 아키텍처와 관련된 전자 장치 (및 기본 물리학)의 일부 작동 원리 ( 반도체 , 반도체 에너지 구역, p-np 게이트 등) 가 도입 될 수 있습니다 .
그런 다음 프로그래밍 및 알고리즘에 대한 이전 자료를 활용하고 업계에서 사용되는 CPU 설계 (및 설명) ( 로직 게이트 , 플립 플롭 , FPGA , VHDL , CMOS 회로 등) 기술 (현대)을 도입 할 수 있습니다 .
이것은 병렬 처리, 파이프 라이닝, 캐시 메모리, 벡터 어드레싱, 마이크로 프로그래밍, DMA 등과 같은 CPU 설계 아키텍처 문제로 더 진행될 수 있습니다.
글쎄, 아마 이것은 너무 많을 수도 있지만 대답을 독립적으로 만들기 위해 추가되었습니다.