[어셈블리어] 두 숫자 사칙연산

등록일 2003.05.06 압축파일 (zip) | 13페이지 | 가격 1,000원

소개글

어셈블리어 과제물입니다.
소스코드의 각 라인별로 주석을 적어두었습니다.

목차

사칙연산.doc - 제출용 문서
Calc.asm - 프로그램 소스 파일
Calc.obj - 컴파일된 오브젝트 파일
Calc.exe - 링크된 실행 파일

본문내용

[문제]
두수를 입력 받아 4칙 연산 (덧셈, 뺄셈, 곱셈, 나눗셈)을 한 후 결과를 출력하라.

[문제 정의]
NS 차트
PROG_START : 데이터 세그먼트의 초기화
화면에 입력을 요구하는 메시지 출력
화면에 1번째 입력을 받는 프롬프트 출력
1번째 문자를 입력 받는다 (입력값은 숫자)
입력받은 문자를 숫자로 변환한다 (30H 감소)
1번째 숫자를 CL레지스터에 저장
...

[소스]
DATA SEGMENT
; 입력에 관계된 변수들
; 입력받기전 메세지
INPUT_MESSAGE DB 'Input 2 number for calculation...',0DH,0AH,'$'
; 입력받기 위한 프롬프트
INPUT_PROMPT DB '>','$'
...

[입력/출력]
정상적인 출력 화면
결과값이 0~10을 넘었을 때 오동작
정상적인 출력 화면

[결론]
어셈블리어로 처음 짜보는 프로그램이었다.
도스인터럽트를 호출 하는 것이 아주 인상적이었고, 재미있었다.
4개의 레지스터를 사용하다 보니, 저장공간과 계산공간을 적절히 아껴 써야 했다.
C++로 프로그램을 작성할 때 보다 간단한 프로그램인데도 불구하고 코드가 많이 길어 졌다. 코드가 너무 길어서 NS차트를 좀 다르게 만들어야 했다.
...
*원하는 자료를 검색 해 보세요.
  • 어셈블리어 연습문제 1,2장 5페이지
    연습 문제1.1 (a) 컴퓨터 기억장소의 기본적인 빌딩 블록(building block)은 무엇인가?; bit(비트) (b) 그것의 두 가지 상태는 무엇인가?;오프(off)이면 그 값은 0으로 간주되며, 온(on)이면 그 값은 1로 간주된다.1.2 (a) 연습문제..
  • 어셈블리어 1장 연습문제 4페이지
    1.1 (a) 컴퓨터 기억장소의 기본적인 빌딩 블록(building block)은 무엇인가? 답: 비트(bit) (b) 그것의 두 가지 상태는 무엇인가? 답: 0과 11.2 (a) 연습문제 1.1에서 언급한 9개 원소의 한 묶음을 무엇이라 하는가? ..
  • 어셈블리어 연습문제 4장 3페이지
    4.1 컴파일러와 어셈블러의 차이점을 설명하라.;컴파일러는 소스 코드를 기계 코드(기술적으로는 목적코드)로 번역하지만, 어셈블러는 저급 언어를 목적코드로 번역한다.4.2 어셈블리 언어에서 예약어란 무엇인가? 두 가지 예를 들라.;ADD, SIZE 4.3 어셈블리 언어..
  • [어셈블리어] Factorial.asm 0페이지
    어셈블리어로 구현한 Factorial 입니다.어셈블리 수업시간에 필히 교수님들께서 요구하실 Factorial 관련 코드입니다.이해를 돕기 위해 레지스터값도 볼 수 있게끔 코딩하였습니다.코드는 main.asm,실행방법-인터넷에서 Irvine 관련 파일을 설치하신 후, V..
  • Cygwin 어셈블리어, 최소숫자와 최대숫자의 덧셈 구하기. 6페이지
    -Cygwin 최소함수와 최대함수를 구해 서로 덧셈하는 프로그램.아래 두 파일이 있다. 화면에 score 배열 원소의 최대값과 최소값의 합이 출력되도록 어셈블리 코드를 완성하시오. 주의: 1) routine.s 에 포함된 assembly code 는 삭제하지 않고 포함..
  • C코드 어셈블리어 구현 5페이지
    f(x)= a*x*x*x + b*x 결과 출력하기C코드와 결과값 & 어셈블리 코드* extern 선언하지 않고 main코드 내에 포함하여 어셈블리 코드를 작성하였습니다. f:push %rbpmov %rsp,%rbpmov %edi,4(%rbp)mov %esi,8(%rbp..
  • [토끼] 어셈블리어 산술연산, BCD AND ASCII ARITHMETIC 코드 리뷰 및 에뮬 결과 수록 6페이지
    Example 5-1 ADDITION, SUBTRACTION, AND COMPARISON이 코드는 간단한 덧셈 명령어로써 결국 모두 다 더해서 AX에 저장하라는 코드이다.MOV BX,1H // BX 에 1을 넣는다.MOV CX,1H // CX 에 1을 넣는다.MOV..
더보기
      최근 구매한 회원 학교정보 보기
      1. 최근 2주간 다운받은 회원수와 학교정보이며
         구매한 본인의 구매정보도 함께 표시됩니다.
      2. 매시 정각마다 업데이트 됩니다. (02:00 ~ 21:00)
      3. 구매자의 학교정보가 없는 경우 기타로 표시됩니다.
      4. 지식포인트 보유 시 지식포인트가 차감되며
         미보유 시 아이디당 1일 3회만 제공됩니다.
      상세하단 배너
      최근 본 자료더보기
      상세우측 배너
      [어셈블리어] 두 숫자 사칙연산