[어셈블리] 1000개의 데이터 정렬하고, 100개의 데이터 검색하는 어셈블리 코드 및 레포트
- 최초 등록일
- 2015.03.17
- 최종 저작일
- 2013.12
- 13페이지/ 압축파일
- 가격 3,500원
소개글
텀프로젝트>> 서로 값이 다른 1000 개의 데이터를 정렬하고, 정렬된 데이터들 중 100 개의 데이터를 검색 하는 어셈블리 코드를 작성하라.
주석 달려있는 정렬코드(.s)와 프로젝트 결과 보고서(13쪽)가 첨부되어 있습니다.
목차
1. Introduction
2. Project specification
3. Algorithm specification
4. Performance Evaluation & Result capture
5. Discussion and Conclusion
6. References
본문내용
1. Introduction
1.1 overall description
1) Goals
본 프로젝트는 Random_data 주소 영역에서 임의의 서로 값이 다른 1000개의 데이터를 정렬한 후 정렬한 결과를 Array_data 주소에 2byte 단위로 저장하고, 정렬된 데이터들 중 Search_data 주소에 저장되어 있는 100개의 데이터를 검색하면서 검색된 data의 index를 0x40000000번지를 시작으로 2byte 단위로 저장, 검색이 성공한 데이터의 개수를 r12에 저장한다.
<중 략>
2. Project specification
2.1 Overall specification
본 프로젝트에서 사용되는 모든 데이터가 저장되는 “DATA AREA”는 다음과 같이 세 개의 주소영역으로 구성된다.
- Label: Ramdom_data
DCD 명령어를 이용하여 데이터가 선언되어 있음
임의의 데이터 1000 개가 저장되어 있는 메모리의 첫 주소 값
임의의 데이터는 0~5000 사이의 정수 값을 원소로 가지며, 중복된 데이터는 없음
<중 략>
Start
load the address of the Random_data
load the address of the Array_data
load the address of the Search_data
size = 1000 설정
h = size; //간격을 size로 초기화
do{
h = h/2; //간격 계산
//삽입 정렬
for(first = 0; first < h; first++){
//시작 위치와 증감은 간격으로 한다는 점에서 기본 삽입 정렬 코드와의 차이점이다.
for(i = first+h; i < size; i += h){
temp = num[i];
for(j = i-h; j >= 0 && num[j] > temp; j -= h){
num[j+h] = num[j];
}
참고 자료
어셈블리 프로그램 설계 및 실습 프로젝트 관련 강의자료/광운대학교/2013
C구조대 그리고 IT이야기/http://blog.naver.com.zacra
열혈 자료구조/윤성우 저/오렌지미디어
정렬/http://naangilima.blog.me/140164547902
압축파일 내 파일목록
proterm.s
프로젝트 레포트.doc