2016-12-28 3 views
-1

사람들은 항상 8, 16 및 32 비트 컨트롤러에서 프로그래밍/경험이 가능한 엔지니어를 원합니다. 나는 아직도 우리가 8, 16, 32 비트 마이크로 컨트롤러를 프로그램 할 때 큰 차이가 있다는 것을 알아낼 수 없다? 아니면 변수를 선언하는 측면에서 다른 ...마이크로 컨트롤러 8 비트, 16 비트, 32 비트를 프로그래밍 할 때의 차이점은 무엇입니까?

+1

gearless moped와 20 톤 grab 트럭을 운전하는 데에는 큰 차이가 있습니까? 기술은 사용 가능한 설비와 마찬가지로 매우 다릅니다. 귀하의 예제에서 한 가지 분명한 차이점은 8 비트 프로세서가 16 비트 또는 32 비트 산술을 간단하게 수행 할 수 없다는 것입니다. 당신이 높은 수준의 언어를 언급하지 않았기 때문에 나는 그것을 말한다. –

답변

1

날씨 베인의 의견과 유사합니다. 간결한 소형차, 픽업 트럭, 움직이는 밴 및 세미 트럭 (트랙터 트레일러)을 운전하는 데 차이가 있습니까? 음, 많은면에서 그들은 가스, 브레이크, 스티어링 휠, 시트, 도어, 창문, 라디오, 헤드 라이트 등 모든 것들이 브레이크, 가스 및 조향 장치입니다. 스마트 카로 집을 옮길 수 있습니까? 당신이 어쩌면 침대와 소파를위한 작은 트레일러를 얻을 수 있지만, 모든 것을 다 잘 할 수는 없지만, 한 번에 한 상자 또는 두 칸을 움직일 수 있고, 많은 수의 여행을 할 수 있습니다. 네가 가진 것들.

C와 같이 높은 레벨을 프로그래밍하는 경우 초기에는 가스, 브레이크, 조향 장치가 동일하게 느껴집니다. 그러나 물건을 옮기거나 여러 사람을 이동시키기 위해 많은 여행을하는 것과 같습니다. 일반적으로 8 비트 프로세서, 16 ​​비트를 사용하여 64 비트 수학을 수행 할 수 있습니다. 우리는 32 비트를 알고 있습니다. 왜냐하면 항상 그렇게하고 자연스럽게 64 비트를 수행하기 때문입니다. 단지 더 많은 여행이 필요합니다. 수학을 여러 부분으로 나눠서 한 번에 하나씩해야합니다. 그리고 자연스럽게 아파트를 옮기는 데 트럭을 사용하는 것보다 시간이 많이 걸립니다.

여기 마이크로 소프트 PIC에서 부동 소수점을 사용하여 누군가를 보았습니다. (컴파일러에 라이브러리가 있다면 마이크로 컨트롤러의 부동 소수점을 너무 자주 봅니다.) 라이브러리를 사용하면 사람들이 시도 할 수 있지만 매우 빨리 실행됩니다. 플래시 및/또는 램과 그들의 성능은 무시 무시합니다.

어떤 점에서 변수가 Windows 또는 Linux에서 사용되는 것과 같은 크기가 아니라는 점, 더 오래 걸리거나 리소스가 적다는 점, 디버깅이 아주 조금 다를 수도 있다는 점, 마치 당신이 VW에서 빠져 나가는 유일한 차입니다. 그 차는 픽업 트럭이나 밴을 타거나, 회전 할 때마다 연석이나 주차 된 차를 자르거나, 등에서 멈출 수없는 등의 차를 운전 한 유일한 차입니다. 결국 당신은 그것에 익숙해집니다. 움직이는 트럭과는 달리, 당신은 일반적으로 프로세서의 비트를 다치게 할 수 있습니다. 소프트웨어와 벽돌로 연기를 내보낼 수는 있지만, 시스템이 실제로는 느려지거나 실행되지 않습니다. 모퉁이에 서있는 보행자를 뛰어 다니기 위해 매번 감옥에 가야합니다.

현재와 현재 (오랜 시간이지만 실제로는 매우 사소한 것입니다.)이 플랫폼에 대한 느낌을 갖기 위해 모든 종류의 시뮬레이터/에뮬레이터를 찾을 수 있습니다. 성능이 올바르지 않을 수 있지만 1024 바이트의 RAM과 몇 킬로 비트의 플래시 만 있으면 바로 느낄 수 있습니다. 왜 몇 줄의 고급 코드 만 사용하면 많은 지침을 사용하는지 궁금 할 것입니다. 그 8 비트 mcu 어쩌면 같은 것들을 이해할 그래서 나는 많은 코드를 (컴파일러가 그것을 낭비하지 않는, 여전히 낭비)하지 말고, 마찬가지로 16 사용 주로 16 비트 및 32 대부분 32 비트를 사용하지 않도록 주로 8 비트 변수를 사용해야합니다. (더 큰 플랫폼에서 메모리를 "절약"하려고하면 실제로 확장 또는 클립 작업을 할 때마다 더 많은 사이클을 요구할 수 있습니다.