C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[13183] 잡담같은 질문 : 어셈블리쓰나요?
chqh [huniper] 3103 읽음    2007-07-17 05:46
이 세상에서 처음으로 배워본 컴퓨터 언어가 어셈블리엿읍니다
그 다음에 코볼이었는데요

웃기는 것이 당시에 제가 일하던 곳은 원래 코볼을 먼저 가르쳤다가
제가 컴퓨터 배울 때부터 어셈블리를 먼저 가르쳣읍니다.

이유는?
믿거나 말거나
사람들이 코볼을 처음 언어로 배우다가 잘 모르겟으니까
'에라 포기하자. 다음에 뭐 배우는지 모르지만
그때부터 맘잡고 하자.'

이러다가 다음에 배우는 어셈블리가 코볼보다 더 어려우니까
이제는 코볼이고 어셈블리고 뭐고 완전히 포기 해버려서

제가 교육받을 당시는 어셈블리부터 가르치면서 확 겁주고
어셈블리 포기하면 다음에 배우는 코볼이라고 열심히 하라고
순서가 바꾸었읍니다

그래서인지 저는 어셈블리는 잘모릅니다
웃사람들이 작전쓴대로 어셈블리는 포기해보렷읍니다
남의 code 보면 대충 뭐하는건지 명령어나 좀 아는 정도엿읍니다

그런데 C 같은 하이 레벨 언어와 달라서
저질(?)인  어셈블리는 머신에 따라서 다릅니다
저는 IBM 대형에서 사용하는 370 assembler 배웠고
나중에는 VAX 11 이라는 DEC(Digital Equipment Corporation) 회사의
중형 컴퓨터의 어셈블리 앞부분 맛만 보앗읍니다

이제 요즘 사용하는 PC용 어셈블리에 관하여 말하자면 공부해 본적이 없읍니다

그리고 지난 겨울에 어느 중고 책방에서 도스용 그러니까 머신- 컴퓨터 본체, 구체적으로는 CPU- 이
아마도 대충 20 년전의 286 용 대상으로 하는 어셈블리 책을 구하게 되었읍니다
서문도 안읽고 어디 치워 둔것 같은데요. 아직 버리지는 않앗을 겁니다 ㅎㅎ


질문 :

1. 요즘의 pc, 즉 펜티엄 5 경우도 어셈블러 잇을텐데요
책도 못봣고 컴파일러도 못봤거든요
누구 본 사람 잇나요?
없으면 어셈블러 쓰고 싶은 경우는 어떻게 하나요? 좀 이상하네요
(전 쓰고 싶은 생각없지만요)

2. 전에 어느 C 책을 보니까  in line assembler 인가해서
C 소스중간에 어셈블러 몇줄 넣고 컴파일 하는 방법 있던데요
델파이나 C++ 빌더에서도 당연히 같은 방식을 사용할수잇겟지요?
김상면 [windyboy]   2007-07-17 09:06 X
저는 어셈을 좀 공부했습니다.
남들보다 쉽게 빠르게 공부했는데 그 이유는 전자 계산기 구조를 눈이 빠지게 공부했기 때문이라고 생각합니다. 남들은 AX  BX CX를 외울때 저는 척보고 알았습니다. 외냐고요 전자계산기 구조에 다옵니다.

그리고 학교에서는 어셈을 전반부만 가르치는것 같던데 나머지는 혼자서 마스터는 못하고 대충 보았는데 그부분을 공부하고는 현재의 언어를 이해하는 폭과 시간이 기하 급수적으로 빨라지더군요 c언어의 다양한 호출 규약도 조금만 생각하면 당연히 그급언어가 난무하면 그런것이 생기리라 생각했는데 역시나 더군요...

델파이는 제가 잘 모릅니다. 학부 시절에 학교에 가르칠때 남들과 다르게 프로그램하는데 상당히 지저분하고 고급적인 기법을 구현하기에 문제가 잇을것 같아 학점만 이수하고 더이상의 전전이 없습니다. 현재는 델파이가 대세라 다시 공부해야 하지만 좀처럼 시간이 나지 않는군요.. 그래도 델파이 책한권 구입해서 시간 나는대로 보고 잇는데 옛날보다는 상당히 발전 했더군요. 인라인 어셈은 물론이 증감 연산까지 지원하고 정말이지 많은 변화가 있더군요 객체지향적인 요소도 추가되어 VCL의 강력한 기능을 마음대로 주므르고....

VC와 C++빌더는 회사가 다른 C++개발 툴입니다. C++은 C의 언어적인 확장 팩이고...
따라서 C에서 가능한것은 C++에서 안되는게 없다고 해도 틀린말이 아닙니다.

요즘은 컴파일러가 최적화를 워낙에 잘하고 하드웨어가 잘 발달해서 어셈으로 프로그램 할일이 별로 없다고 하더군요.....
따라서 호환성에 문제가 있는 어셈을 사용하는 사람은 자연히 줄어 들겠지요!

바이
김태선 [cppbuilder]   2007-07-17 12:12 X
1. 빌더에 tasm32.exe 가 있습니다. 어셈블리는 많이 쓰입니다. 속도가 필요할때 커널을 조작할때 필요합니다.

2. 당근 가능합니다. 델과 빌더 그리고 VC 모두 가능합니다.

TohnoLyn [tohnokanna]   2007-07-17 13:25 X
어셈블리는 속도가 중요한 게임라이브러리 같은데서는 아직 쓰이기도 하고..

실제론 쓰기보단 읽는데 더 많이 사용되는것 가더군요
김도완 [purplecofe2]   2007-07-17 18:11 X
어셈블리는 기계와 너무 밀접해서 꼭 쓸 필요는 없습니다.

그리고 MASM 공개된 최후버전이 있습니다.

AT&T 문법 어셈블리와 MS 문법 어셈블리가 아주 다릅니다.

빌더나 델파이와 함께라면 인라인 어셈블리가 효율적입니다.

금목암 [iconms1]   2007-07-18 13:40 X
제가 어셈블러도 쓰고 C도 쓰고 VB,ASP,VC,C++BUILDER 쓰는데 굳이 어셈블러쓰실 필요없는것 같은데요 마이콤도 아니고 PC에서 메모리 부족도 없고 속도도 필요없다 디바이스 드라이버 만드는것도 아닌데 고생마시고 편한툴 쓰세요 . 개발시간 인력 낭비고 나 외에는 그 소스 봐도 아무도 모릅니다 그러면 노가다 작업에서 손 못떼게 됩니다
김호광 [testcode]   2007-07-18 21:23 X
어셈을 쓰는 몇 안되는 작업이 있지요. 임베디드 프로그래밍 , 플레이스테이션 (많이 줄어듬), 닌덴도 DS 등등에서 아직도 사용 중입니다. bitblt만 간신히 있는 환경들이 아직도 있거든요 printf는 꿈도 못꾸는 곳이 있습니다.
윈도우 계열에서는 게임쪽에서 일부 익스트림한 사람들이 비디오 카드를 최적화하여 사용하기 위해 사용하는 예가 있으나 점점 줄어 들었습니다.

+ -

관련 글 리스트
13183 잡담같은 질문 : 어셈블리쓰나요? chqh 3103 2007/07/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.