모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 코로나19
  • 2020도쿄올림픽
  • 게시판찾기
  • 오유인페이지
    개인차단 상태
    중용자님의
    개인페이지입니다
    가입 : 12-10-09
    방문 : 1057회
    닉네임변경 이력
    회원차단
    회원차단해제
     

    중용자님의 댓글입니다.
    번호 제목 댓글날짜 추천/비공감 삭제
    724 어린아이의 옹알이에 사람들이 관심이 많은것 같습니다. [새창] 2015-08-19 18:27:09 2 삭제
    어린아이가 기초적인 문제를 갖고와서 오유분들 실력타령을 하고 있는 정말 어처구니 없는 허세를 프게 분들이 너무 관대하게 대해주신게 아닌가 해서 쓴 글입니다.

    어그로들은 잘대해줘도 별로 소용이 없더라구요.
    723 실무에서 '컴파일러' 관련 지식은 어디에서 쓰여지게 되나요? [새창] 2015-08-15 19:08:31 1 삭제
    컴파일러와 어셈블리를 알면 언어와 OS에 대해 훨씬 깊이 이해할 수 있기 때문에 프로그래밍 능력자체가 전반적으로 상승합니다.
    가끔 별로 필요없다는 사람들이 있는데 컴파일러와 어셈블리에 대해 공부하고 나면 절대할 수 없는 얘기죠.
    새로운 언어와 분야를 익히는데 월등히 빠른 속도로 익힐 수 있고 복잡한 알고리즘이 필요하지 않는 모든 분야의 프로그래밍이 가능합니다.
    할 수 없는 디버깅이 없고 할 수 없는 분야가 없어집니다.
    722 상속 구현으로 고민하다 일단 대충 마무리 했습니다. [새창] 2015-08-15 14:17:18 0 삭제
    어셈블러가 제공하는 모든 기능은 그대로 사용할 수 있습니다.
    Visual C++로 MFC 사용하지 않고 순수 C++ 프로그래밍 가능한것과 비슷하다고 생각하면 됩니다.
    721 상속 구현으로 고민하다 일단 대충 마무리 했습니다. [새창] 2015-08-15 14:00:13 0 삭제
    다른 어셈블리 IDE들이 있는데 전부 어셈블리에 추가 기능을 덧붙인 방식입니다.
    저 처럼 아예 다른 언어로 만든 경우는 FASM을 컴파일러로 사용하는 PureBasic과 비슷하다고 생각하시면 됩니다.
    720 상속 구현으로 고민하다 일단 대충 마무리 했습니다. [새창] 2015-08-15 13:56:45 1 삭제
    덧붙이자면 상속여부에 상관없이 모든 클래스 변수는 전역변수 보다 접근하는 속도가 더 빠릅니다.
    719 상속 구현으로 고민하다 일단 대충 마무리 했습니다. [새창] 2015-08-15 13:53:55 1 삭제
    변수 상속은 성능 저하가 전혀 없는 방식으로 구현했습니다.
    상위 클래스에서 변수를 상속 받으면 상위 클래스의 변수로 인식되는게 아니라 상속 받은 클래스의 변수로 컴파일 됩니다.
    구조체 상속처럼 생각하시면 될 것 같습니다.
    클래스를 생성한 곳에서는 한번더 거쳐서 접근해야 하기에 약간의 성능저하가 있지만 클래스 내에서는 스택에 정의된 지역변수와 클래스 변수의 접근 속도가 동일합니다.

    성능이 떨어질만한 요소는 전부배제하고 순수 어셈블리 프로그래밍과 동일한 수준의 성능과 파일크기가 가능한 부분만 구현중입니다.
    718 상속 구현으로 고민하다 일단 대충 마무리 했습니다. [새창] 2015-08-15 00:38:37 0 삭제
    위의 코드에 생성자, 소멸자를 생략했는데 생성자와 소멸자는 클래스 내에 New, Finalize함수를 구현하면 호출합니다.
    생성자, 소멸자가 없어도 에러를 발생시키지 않습니다.
    생성자에 값을 전달하는 방식은 New로 클래스 인스턴스 생성시 New 클래스명, 파라미터1, 파라미터2... 방식으로 전달합니다.
    717 FastASM 개발상황 [새창] 2015-08-14 16:48:55 1 삭제
    어셈블리 프로그래밍을 하는 사람은 위의 컴파일러 옵션에 있는 기능들을 전부 직접 구현할 수 있습니다.
    상당부분은 제가 만든 라이브러리에서 지원할 생각이지만 VS 처럼 수많은 사람들이 범용적으로 사용하라고 만드는 라이브러리가 아니기 때문에 꼭 필요한 부분만 지원할 생각이고 나머지는 본인들이 직접 만들어야죠.
    716 FastASM 개발상황 [새창] 2015-08-14 16:39:29 0 삭제
    기본적으로 순수 C API로 프로그래밍 하는 것보다는 훨씬 타이트하게 에러 체크를 해줍니다.
    그리고 제가 만들고 있는 건 어디까지나 어셈블리 프로그래밍의 생산성을 높여주는 언어입니다.
    근본이 어셈블리 언어입니다.
    715 FastASM 개발상황 [새창] 2015-08-14 16:29:46 0 삭제
    기본적으로 어셈블리 프로그래밍은 모든 걸 직접 제어하는 프로그래밍을 합니다.
    오버 플로우, 스택 프레임 체크 등 전부 직접 본인이 제어하는 프로그래밍을 하죠.

    제가 만든 라이브러리의 경우 배열은 디버그 모드에서 전부 오버 플로우 체크를 합니다.
    릴리즈 모드에서도 상수로 배열에 접근할 경우 오버 플로우 체크를 하구요.

    그리고 Windows API를 호출할 경우 자동으로 에러메세지를 기록하고 호출하고 디버그 모드에서는 라이브러리에서 지원하는 API, 함수들의 인수를 전부 검토해 줍니다.
    예를 들어 윈도우 핸들일 경우 정상적인 핸들인지 검사하고 스트링 함수일 경우 스트링인지 검사하는 식이죠.

    스택 프레임의 경우에는 아시다시피 어셈블리 프로그래밍은 스택을 직접 제어합니다.
    제가 제작한 라이브러리에서는 스택을 직접 제어하는 수고를 덜어주는 역할을 하고 스택을 제어하는 방식에 대한 수정도 컴파일러 옵션보다 훨씬 쉽게 바꿀 수 있습니다.
    714 FastASM 개발상황 [새창] 2015-08-14 15:15:10 0 삭제
    제가 하고 있는 작업은 C++에 비유하면 MFC, WTL과 같은 라이브러리를 만드는 작업입니다.
    차이점이 있다면 MFC, WTL 등은 클래스 라이브러리로 C++의 문법을 대부분 그대로 사용하지만 제가 만들고 있는 라이브러리는 어셈블리에 추가적인 고급언어 문법을 지원하는 것이죠.
    MFC, WTL 사용하지 않고 순수 C++로 프로그래밍 할 수 있듯이 제가 만든 라이브러리를 사용할 때도 어셈블리를 그대로 사용할 수 있습니다.

    그리고 어셈블리로 직접 프로그래밍 하는 것과 동일하기 때문에 본인이 버그, 보안 취약점을 만들어 내지 않는 이상 컴파일러에 의한 버그, 보안 취약점의 문제는 없습니다.
    713 FastASM 개발상황 [새창] 2015-08-13 22:01:51 0 삭제
    감사합니다. ^^
    712 FastASM 개발상황 [새창] 2015-08-13 21:59:19 0 삭제
    완성되면 참 좋을 것 같은데 문제는 완성이 오래 걸릴 것 같네요.
    얼마가 걸리건 계속 해나갈 생각입니다. ^^
    711 FastASM 개발상황 [새창] 2015-08-13 13:28:49 0 삭제
    위의 두분 감사합니다. ^^
    710 FastASM 개발상황 [새창] 2015-08-12 22:15:59 0 삭제
    동일한 어셈블리 입니다.
    위의 코드를 컴파일하면 ollyDbg 등에서 보던걸 그대로 보실 수 있습니다.

    보통 네이티브 어셈블리로 개발을 하면 일반적인 비주얼 언어들에 비해 10분의 1도 안되는 실행파일이 생성됩니다.
    실행속도야 당연히 가장 빠르구요.
    제가 하는 작업은 어셈블리의 압도적인 성능과 적은 파일크기는 유지한채 생산성만 높이는 언어를 만드는 겁니다.



    [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [다음10개▶]

     
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈