모바일 오유 바로가기
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회
    닉네임변경 이력
    회원차단
    회원차단해제
    게시물ID : programmer_18684
    작성자 : 중용자
    추천 : 6
    조회수 : 458
    IP : 182.228.***.202
    댓글 : 0개
    등록시간 : 2016/10/11 14:03:59
    http://todayhumor.com/?programmer_18684 모바일
    Hybrid Assembler - Hello, world!
    <font face="맑은 고딕"><span class="sc1" style="font-size:10pt;color:#008000;white-space:pre;">; Hybrid Assembler</span></font> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"></span><span class="sc1" style="font-size:10pt;color:#008000;white-space:pre;">; Copyright 2016. asmpro all rights reserved.</span></font> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"><br></span></font></div> <div><font face="맑은 고딕"><span class="sc5" style="font-size:10pt;white-space:pre;">format</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">pe_console</span></font></div> <div><font face="맑은 고딕"><span class="sc9" style="font-size:10pt;color:#0080ff;white-space:pre;"><br></span></font></div> <div><font face="맑은 고딕"><span class="sc9" style="font-size:10pt;color:#0080ff;white-space:pre;">section</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">data</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"><br></span></font></div> <div><font face="맑은 고딕"><span class="sc5" style="font-size:10pt;white-space:pre;">strHybrid</span></font><span class="sc0" style="font-family:'맑은 고딕';font-size:10pt;white-space:pre;"> </span><span class="sc9" style="font-family:'맑은 고딕';font-size:10pt;color:#0080ff;white-space:pre;">db</span><span class="sc0" style="font-family:'맑은 고딕';font-size:10pt;white-space:pre;"> </span><span class="sc3" style="font-family:'맑은 고딕';font-size:10pt;color:#808080;white-space:pre;">"Hybrid"</span><span class="sc4" style="font-family:'맑은 고딕';font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc2" style="font-family:'맑은 고딕';font-size:10pt;color:#ff8000;white-space:pre;">0</span></div> <div><span class="sc0" style="font-family:'맑은 고딕';font-size:10pt;white-space:pre;"></span><span class="sc5" style="font-family:'맑은 고딕';font-size:10pt;white-space:pre;">strHello</span><span class="sc0" style="font-family:'맑은 고딕';font-size:10pt;white-space:pre;"> </span><span class="sc9" style="font-family:'맑은 고딕';font-size:10pt;color:#0080ff;white-space:pre;">db</span><span class="sc0" style="font-family:'맑은 고딕';font-size:10pt;white-space:pre;"> </span><span class="sc3" style="font-family:'맑은 고딕';font-size:10pt;color:#808080;white-space:pre;">"Hello, world!"</span><span class="sc4" style="font-family:'맑은 고딕';font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc2" style="font-family:'맑은 고딕';font-size:10pt;color:#ff8000;white-space:pre;">0</span></div> <div><span class="sc2" style="font-family:'맑은 고딕';font-size:10pt;color:#ff8000;white-space:pre;"><br></span></div> <div><font face="맑은 고딕"><span class="sc9" style="font-size:10pt;color:#0080ff;white-space:pre;">section</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">code</span></font></div> <div><font face="맑은 고딕"><span class="sc5" style="font-size:10pt;white-space:pre;"><br></span></font></div> <div><font face="맑은 고딕"><span class="sc5" style="font-size:10pt;white-space:pre;">main</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">:</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">sub</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">rsp</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc2" style="font-size:10pt;color:#ff8000;white-space:pre;">0x28</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">mov</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">rcx</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc2" style="font-size:10pt;color:#ff8000;white-space:pre;">0</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">mov</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">rdx</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">strHello</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">mov</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">r8</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">strHybrid</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">mov</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">r9</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc2" style="font-size:10pt;color:#ff8000;white-space:pre;">0</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">call</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">@MessageBoxA</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">mov</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">rcx</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc2" style="font-size:10pt;color:#ff8000;white-space:pre;">0</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">call</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">@ExitProcess</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">add</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc5" style="font-size:10pt;white-space:pre;">rsp</span><span class="sc4" style="font-size:10pt;color:#000080;font-weight:bold;white-space:pre;">,</span><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc2" style="font-size:10pt;color:#ff8000;white-space:pre;">0x28</span></font></div> <div><font face="맑은 고딕"><span class="sc0" style="font-size:10pt;white-space:pre;"> </span><span class="sc6" style="font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;">ret</span></font> <div><span class="sc6" style="font-family:D2Coding;font-size:10pt;color:#0000ff;font-weight:bold;white-space:pre;"><br></span></div> <div><br></div> <div>Hybrid compiler를 만들 때 Assembler와 Linker는 외부프로그램을 사용하려 했던 계획을 취소하고 Assembler를 개발하고 있습니다.</div> <div>위의 코드는 현재 개발중인 Assembler에서 Assemble이 되는 Hybrid assembler 버전 Hello, world! 입니다.</div> <div><br></div> <div>Hybrid assembler(HASM)와 타 어셈블러와의 차이점은 OS API를 호출하기 위해 정의가 필요하지 않다는 겁니다.</div> <div>위에 보면 strHello, strHybrid는 미리 정의가 되어 있는데 @로 시작하는 변수는 정의가 되어있지 않죠.</div> <div>HASM은 @시작하는 토큰을 OS API로 인식합니다.</div> <div>HASM은 실행시 해쉬테이블에 예약어와 더불어 OS API도 모두 등록하여 API 사용시 해당 API에 필요한 정의를 자동으로 합니다.</div> <div><span style="font-size:9pt;">그 외에 타 어셈블러들에 비해 디테일한 설정을 기본값으로 집어넣어서 더 간결합니다.</span></div> <div><br></div> <div>이제 assembler가 대충 만들어진 만큼 여기다 살을 붙이는 형태로 Hybrid compiler를 만들겁니다.</div> <div>일반적인 compiler는 고급문법과 기계어코드 생성부분이 분리되어 있고 멀티플랫폼 지원을 위해 중간코드를 생성하는데 반해 저는 완전히 역행하는 구조로 compiler를 만드는 것이죠.</div> <div>그 동안 컴파일러들이 사용하기 쉽고 멀티플랫폼을 지원하는 방향으로 발전하면서 손해본 파일크기와 성능을 극대화시키기 위해서입니다.</div> <div>데스크탑 운영체제들 대부분이 x86-64 아키텍처를 지원하기 때문에 내린 결정이기도 하구요.</div></div></div>

    이 게시물을 추천한 분들의 목록입니다.
    [1] 2016/10/11 14:26:55  110.11.***.174  Pr0g1  353995
    [2] 2016/10/11 15:18:00  122.44.***.166  fork()  589159
    [3] 2016/10/11 16:33:56  110.76.***.64  佐倉杏子  655684
    [4] 2016/10/11 19:24:37  175.223.***.79  정겨울  423595
    [5] 2016/10/12 03:55:36  125.180.***.177  나이쓰한넘  458806
    [6] 2016/10/12 16:41:15  182.211.***.111  cobain  273427
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.

    번호 제 목 이름 날짜 조회 추천
    205
    라이젠 견적 조언 부탁드립니다. (파워, 메인보드, 마우스) [5] 본인삭제금지 중용자 17/12/15 23:35 61 1
    204
    강백호 황치열 너무 목소리를 거칠게 내네요. 중용자 17/05/21 17:35 228 1
    203
    무당벌레 이예준 정말 노래 잘부르네요. [4] 중용자 17/05/21 17:10 217 6
    202
    전 노통의 삶에 대한 글도 영화도 보지 못합니다. [5] 중용자 17/05/17 23:13 316 14
    201
    에어로빅소녀- 화사, 탱고걸- 김보형? [4] 중용자 17/05/14 17:30 209 1
    200
    김빵순 안신애 같은 안신애 언제 다쳤어요? 중용자 17/04/30 17:33 126 1
    199
    대통령 후보 토론회 왜 이리 재미있죠? [2] 중용자 17/04/25 23:21 437 1
    198
    아무래도 제가 잘못된 판단으로 글을 쓴 것 같아 사과드립니다. [6] 중용자 17/04/21 19:08 611 18
    197
    어그로 들에게는 답글보다는 신고를 부탁드립니다. 중용자 17/04/20 01:11 49 2
    196
    한 회사가 오랜시간 잘나가면 신격화 시키는 경향이 있습니다. [6] 중용자 17/04/15 16:00 154 7
    195
    유승민이 토론을 잘했다는 평에 대한 오해들 [4] 중용자 17/04/14 01:04 412 3
    194
    유승민이 오늘 토론의 승자이고 긍정적 결과인 것 같습니다. [21] 중용자 17/04/14 00:24 1609 25
    193
    지금까지의 토론 평가 : 유 > 심 > 문 > 안 > 홍 [24] 중용자 17/04/13 23:22 1305 6/22
    192
    그래픽 카드 선택팁 [4] 중용자 17/02/19 19:02 122 3
    191
    오랬만에 컴파일러 개발 근황 [11] 중용자 17/01/25 15:25 74 14
    190
    호빵왕자 시작부분은 환희같네요. 중용자 17/01/08 18:19 76 2
    189
    디저트맨 정승환 같은데요. [3] 중용자 16/12/25 17:35 235 1
    188
    박기영이 그 동안 성악쪽 공부 한 것 많이 써먹네요. 중용자 16/12/18 18:11 178 1
    187
    김필 아까워서 복면가왕 또 나왔나 보네요. [2] 중용자 16/12/18 17:10 281 1
    186
    체리필터 나왔네요. 중용자 16/12/11 18:20 49 1
    185
    암행어사 라디, 미스춘향 이지혜 같은데요. [4] 중용자 16/10/16 17:52 278 0
    Hybrid Assembler - Hello, world! 중용자 16/10/11 14:03 44 6
    183
    알리가 이기면 장기가왕 될 수도 있을 것 같네요. 중용자 16/10/09 18:28 142 0
    182
    컴파일러 개발 근황 [39] 중용자 16/10/01 17:48 65 16
    181
    컴퓨터 견적 추천에 과대스펙 추천을 하지 않았으면 좋겠습니다. [7] 중용자 16/09/27 01:42 202 12
    180
    RX 460 가격 및 벤치마크 [7] 중용자 16/08/09 11:49 247 3
    179
    정의당 한방은 참았는데 JTBC 한테 맞은 건 못참겠네요. 중용자 16/07/28 04:58 426 9
    178
    hybrid 컴파일러 제작 중 표준라이브러리와 OS API 호출 방법 [2] 중용자 16/06/10 22:32 25 3
    177
    더 원 칼 뽑았네요. 중용자 16/06/05 17:57 179 0
    176
    벤은 노래 잘합니다. 애들과 비교할 수준이 아니예요. [9] 중용자 16/05/29 18:15 522 6
    [1] [2] [3] [4] [5] [6] [7]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈