회원가입 ID/PW 찾기
AA

출처 : Beginners Introduction to the Assembly Language of ATMEL-AVR-Microprocessors ,2004  by Gerhard Schmidt

 

어셈블러를 왜 배워야 하나?

-짧으며 분석 또는 버그잡기에 편하다.

-빠르다.

-어셈블러를 배우기 쉽다.

---어셈블러를 배우는 데 AT90Sxxxx만한 것 없다.

 

 

레지스터란 무엇인가?   8bit용량을 가진 특별한 기억장치이다.

 

Port란 무엇인가?  AVR에서 Port들은 CPU로부터 내,외부 하드,소프트웨어 구성요소로의 일종의 논리기능을 담당하는 문(gate)이다.

 

 

Why learning Assembler?
Assembler or other languages, that is the question. Why should I learn another language, if I already
learned other programming languages? The best argument: while you live in France you are able to get
through by speaking english, but you will never feel at home then, and life remains complicated. You can
get through with this, but it is rather inappropriate. If things need a hurry, you should use the country's
language.

 

Short and easy
Assembler commands translate one by one to executed machine commands. The processor needs only to
execute what you want it to do and what is necessary to perform the task. No extra loops and unnecessary
features blow up the generated code. If your program storage is short and limited and you have to optimize
your program to fit into memory, assembler is choice 1. Shorter programs are easier to debug, every step
makes sense.

 

Fast and quick
Because only necessary code steps are executed, assembly programs are as fast as possible. The
duration of every step is known. Time critical applications, like time measurements without a hardware
timer, that should perform excellent, must be written in assembler. If you have more time and don't mind if
your chip remains 99% in a wait state type of operation, you can choose any language you want.


 

기계어는 배우기 쉽다.
It is not true that assmbly language is more complicated or not as easy to understand than other
languages. Learning assembly language for whatever hardware type brings you to understand the basic
concepts of any other assembly language dialect. Adding other dialects later is easy. The first assembly
code does not look very attractive, with every 100 additional lines programmed it looks better. Perfect
programs require some thousand lines of code of exercise, and optimization requires lots of work. As
some features are hardware-dependant optimal code requires some familiarity with the hardware concept
and the dialect. The first steps are hard in any language. After some weeks of programming you will laugh
if you go through your first code. Some assembler commands need some monthes of experience.

 

기계어 배우는 데 AT90Sxxxx만한 게 없다.

Assembler programs are a little bit silly: the chip executes anything you tell it to do, and does not ask you if
you are sure overwriting this and that. All protections must be programmed by you, the chip does anything
like it is told. No window warns you, unless you programmed it before.
Basic design errors are as complicated to debug like in any other computer language. But: testing
programs on ATMEL chips is very easy. If it does not do what you expect it to do, you can easily add some
diagnostic lines to the code, reprogram the chip and test it. Bye, bye to you EPROM programmers, to the
UV lamps used to erase your test program, to you pins that don't fit into the socket after having them
removed some douzend times.
Changes are now programmed fast, compiled in no time, and either simulated in the studio or checked incircuit.
No pin is removed, and no UV lamp gives up just in the moment when you had your excellent idea
about that bug.

 

-----------

 

What is a register?
Registers are special storages with 8 bits capacity and they look like this:

 

-----------

Ports in the AVR are gates from the central processing unit to internal and external hard- and software
components. The CPU communicates with these components, reads from them or writes to them, e.g. to
the timers or the parallel ports. The most used port is the flag register, where results of previous operations
are written to and branch conditions are read from.

 

 

...

부분 부분 발췌해서 우리말로 바꾼 것입니다.

 

댓글 4

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
4326 Software & IDEs HOT주차 시스템 회로 구성하는데요.. peng2 1577 2011.10.09
마이크로프로세서 HOTAssembler를 왜 배워야 하나?4 견우7 22365 2011.10.07
4324 PADS HOTpads 9.3 깔았는데..,null 폴더 계속 생겼요./! 시무스 2262 2011.10.07
4323 PADS HOTorcad pads 설치 실행시 발생오류..1 후니다잉용 2478 2011.10.06
4322 Sensor 설계 HOTAC 모터 전류 제어1 컴맹9506 2106 2011.10.06
4321 마이크로프로세서 HOTcapture 에서 화살표 라인 구현 自由疾走 1582 2011.10.06
4320 전기전자 아무거나 HOT전류 측정시 수십 [옴]의 저항을 전류계에 직렬로 연결하여 측정하면 오차가 많이 발생한다 전류계의 내부저항이 측정 오차에 미치는 영향을 설명해주세요 !! ㅜㅜ1 국화보리두충차 1778 2011.10.06
4319 자유주제 HOT버그신고 : 내용 유1 견우7 14725 2011.10.05
4318 마이크로프로세서 HOTAVR의 정확한 의미2 견우7 1836 2011.10.05
4317 마이크로프로세서 HOTjt-2000에 대해 궁금한게 있습니다. 하얀마루 1730 2011.10.04
4316 ECAD 아무거나 HOTpmc/xmc 질문입니다. 마모루 1157 2011.10.04
4315 PADS HOT4층 LAYOUT호 Gerber파일을 생성하는 순서나 자료있나요?3 정상까지 가보자! 3041 2011.10.03
4314 ECAD 아무거나 HOTStandard PCB Layer Stack Up 정상까지 가보자! 1490 2011.10.03
4313 마이크로프로세서 HOTIAR 3.0에서 4.0이후로 바뀌면서 바뀌였던 내용입니다.2 윤군임다 3939 2011.09.29
4312 마이크로프로세서 HOTIAR 버전에 따라 컴파일러가 바뀌나요? 윤군임다 1456 2011.09.28
4311 마이크로프로세서 HOT8051를 이용한 도트매트릭스 회로도 구해여 이치 2120 2011.09.28
4310 자유주제 HOT건의합니다.3 Interrupter 14173 2011.09.28
4309 자유주제 HOT스마트그리드 기술로 로봇이 우리집을 관리해준다!4 일렉트로닉 16530 2011.09.27
4308 자유주제 HOT버그신고 : 내용 유1 견우7 15349 2011.09.27
4307 Analog & Mixed-Signal 설계 HOT신호의 증폭 및 필터 회로도 좀 봐주세요1 준영이~~ 3046 2011.09.26
Prev 1 ... 74 75 76 77 78 79 80 81 82 83 ... 295 Next
  • 사람들의 사사로운 말도 하늘이 들으심은 우뢰와 같다. 캄캄한 방에서 마음을 속이더라도 귀신의 눈은 번개와 같다.
    - 현제
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.