시스템 프로그래밍 (개정판 | 양장본 Hardcover)

시스템 프로그래밍 (개정판 | 양장본 Hardcover)

$30.68
Description
『시스템 프로그래밍』은 인텔 프로세서를 위한 시스템 소프트웨어들(어셈블러, 매크로 프로세서 등)의 설계 방법과 알고리즘을 설명하고, 실제 구현 코드를 [부록]에 수록함으로서 시스템 소프트웨어의 구현 능력을 배양하도록 하였다. 또한 이를 통해 인텔 계열뿐만 아니라 Motorola사의 M68 계열과 Z80 계열 등과 같이 기종이 다른 프로세서를 위한 일반적인 시스템 소프트웨어 설계 및 구현 방법을 습득할 수 있도록 하였다.
저자

이상곤

저자이상곤은
전주대학교영어영문학과학사
전북대학교컴퓨터과학과학사
전북대학교전산학석사
일본국립도쿠시마대학교지능정보공학박사
미국Ohio주UniversityofCincinnati,VisitingScholar방문연구교수역임
현재:전주대학교컴퓨터공학과교수
저서:최신정보검색론(교보문고)

목차

chapter01시스템소프트웨어의개요
1.1컴퓨터하드웨어
1.1.1컴퓨터시스템의기본개념
1.1.2시스템소프트웨어정의
1.2시스템소프트웨어
1.2.1어셈블러(assembler)
1.2.2매크로프로세서(macroprocessor)
1.2.3링커(linker)와로더(loader)
1.2.4번역기(Translator)
1.2.5운영체제(OperatingSystem)
1.3임베디드시스템(EmbeddedSystem)의개요및활용
1.3.1임베디드시스템의정의
1.3.2임베디드시스템을설계하거나개발할때고려사항
1.3.3임베디드시스템활용의예
요약
연습문제

chapter02컴퓨터동작의기본개념
2.1컴퓨터연산단위
2.1.1비트(Bit)
2.1.2바이트(Byte)
2.1.3단어(Word)
2.1.42진수연산
2.2컴퓨터조직
2.2.1프로세서(processor)
2.2.2시스템버스(systembus)
2.2.3기억장치(memory)
2.2.4입출력장치(input/outputdevice)
2.3명령어실행개념
2.3.1판독사이클(readcycle)과기록사이클(writecycle)
2.3.2명령어의실행
2.3.3명령어실행속도
2.4기억장치관리
2.4.1기억장치의주소
2.4.2데이터및프로그램의저장
2.4.3기억장치의관리방법
요약
연습문제

chapter03인텔프로세서의내부구조
3.132비트인텔프로세서
3.1.1펜티엄프로세서의개요
3.1.232비트프로세서의실행환경
3.1.3기본프로그램실행레지스터
3.216비트인텔프로세서
3.2.116비트인텔프로세서의구조
3.2.2명령어의길이
3.2.38086명령어
3.3기억장치(memory)
3.3.1기억장치의모델
3.3.2데이터기록
3.4레지스터(register)
3.4.1레지스터의종류와역할
3.4.2데이터레지스터(dataregister)
3.4.3포인터,인덱스레지스터
3.4.4플래그레지스터(FlagRegister)
3.4.5세그먼트레지스터(SegmentRegister)
3.4.6논리주소와실제주소
3.4.7명령어포인터(IP:InstructionPointer)
3.5데이터의표현
3.5.1데이터의부호(sign)
3.5.2데이터의해석
요약
연습문제

chapter04어셈블리어
4.1프로그래밍언어
4.1.1수의체계
4.1.2프로그래밍언어의계층
4.1.3고급언어와중급언어
4.1.4저급언어
4.1.5프로그래밍언어의선택
4.2메모리와레지스터
4.2.1메모리
4.2.2세그먼트:오프셋(Segment:Offset)
4.2.3레지스터(Register)
4.38086어셈블리어개요
4.3.1어셈블리언어의기본적인이해
4.3.2명령어형식
4.3.3주석문
4.3.4데이터정의
4.4분기와표지기호
4.4.1순차적실행(sequentialexecution)
4.4.2조건분기(conditionalbranch)
4.4.3무조건분기(UnconditionalBranch)
4.5주소지정방식(AddressingMode)
4.6값즉시지정방식
4.7직접주소지정방식
4.7.1레지스터직접지정방식
4.7.2메모리직접주소지정방식
4.8간접주소지정방식
4.8.1레지스터간접주소지정방식([])
4.8.2베이스주소지정방식(Displacement,BX,BP)
4.8.3인덱스주소지정방식(Displacement,SI,DI)
4.8.4베이스인덱스번지지정방식(Displacement,BXorBP,SIorDI)
4.9MOV와ADD명령어의코드변환
요약
연습문제

chapter05매크로프로세서설계
5.1매크로의역할
5.1.1매크로정의와확장
5.1.2매크로와서브루틴
5.2매크로기능
5.2.1매크로인수
5.2.2조건부매크로확장
5.2.3매크로내의매크로호출
5.2.4매크로내의매크로정의
5.2.5반복기능의매크로
5.3매크로프로세서의설계
5.3.1설계시고려사항
5.3.2자료구조
5.4이중패스매크로프로세서알고리즘
5.4.1패스1알고리즘
5.4.2기본기능만포함하는패스2알고리즘
5.4.3매크로내의매크로호출기능을포함하는패스2알고리즘
요약
연습문제

chapter068086어셈블러설계
6.1어셈블러의역할
6.1.1프로그램의작성과실행단계
6.1.2어셈블러의입력과출력
6.2이중패스(TwoPass)
6.2.1이중패스의필요성
6.2.2어셈블과정
6.2.3패스1과패스2의역할
6.3이중패스어셈블러의설계
6.3.1이중패스알고리즘
6.3.2자료구조
6.4단일패스어셈블러
6.4.1단순전향참조
6.4.2다수의전향참조처리
요약
연습문제

chapter07링커와로더의설계
7.1링커와로더의역할
7.1.1링크(link)
7.1.2주기억장치의할당(memoryallocation)
7.1.3재배치및적재(relocation&loading)
7.2로더의형태
7.2.1컴파일즉시로더(compile-and-goloader)
7.2.2절대로더(absoluteloader)
7.2.3링커및재배치로더(linkerandrelocateloader)
7.2.4링킹로더(linkingloader)
7.2.5동적로더(dynamicloader)
7.3링커및재배치로더설계
7.3.1설계를위한문제점
7.3.2링크를위한어셈블링(예제)
7.3.3링크및재배치과정(예제의연속)
7.4자료구조및알고리즘
7.4.1자료구조
7.4.2알고리즘
요약
연습문제

chapter08어셈블리프로그램의연습
[연습1]간단한키패드제어프로그램
[연습2]RepetiveMoveOperation의프로그램
[연습3]ASCII파일의입/출력프로그램
부록
부록A.16진수변환표,2의x제곱
부록B.ASCII변환표
부록C.BCD코드변환표
부록D.8086/8088명령어표와80x86명령어
부록E.어셈블러의지시어
부록F.DOS함수호출(functioncall)
부록G.DEBUG명령어와사용법
부록H.이중패스매크로프로세서의구현
부록I.이중패스어셈블러의설계및구현
부록J.VisualBasic6.0으로설계한스택시뮬레이션의구현예
부록K.TASM에서그래픽문자의제거방법
부록L.stdio.h에정의된함수들
부록M.세그먼트(Segment)

출판사 서평

기초적인컴퓨터기본동작으로부터시스템소프트웨어설계및구현사례를망라하여수록

컴퓨터소프트웨어는시스템소프트웨어와응용소프트웨어로나누어지는데,일반적으로후자는고급언어를전자는어셈블리어를많이사용하므로,시스템프로그래밍방법은어떤특정어셈블리어를이용하여예제를만들고이를위한어셈블러를만드는방법으로설명한다.
그동안대다수의시스템프로그래밍책이다룬IBM360어셈블러는이미사용하지않는컴퓨터에대한내용인반면에,현재대부분의국내대학에서는인텔프로세서계열의PC를가지고컴퓨터실습을하고있는실정이다.따라서이책은지금까지이미존재하지않은기계에대한내용을실습도하지못하면서배워야했던불편함을해결하고자인텔프로세서기반의시스템프로그래밍을설계하여실습할수있도록집필하였다.
이책은인텔프로세서를위한시스템소프트웨어들(어셈블러,매크로프로세서등)의설계방법과알고리즘을설명하고,실제구현코드를[부록]에수록함으로서시스템소프트웨어의구현능력을배양하도록하였다.또한이를통해인텔계열뿐만아니라Motorola사의M68계열과Z80계열등과같이기종이다른프로세서를위한일반적인시스템소프트웨어설계및구현방법을습득할수있도록하였다.

이책의내용

1장에서는시스템소프트웨어와임베디드시스템에대하여살펴본다.
2장에서는일반적인컴퓨터시스템의개념부분으로연산의기본논리,명령어실행의기본개념,기억장치의관리등을다룬다.
3장에서는어셈블리어(AssemblyLanguage)에대해설명한다.이를이해하기위해서는프로세서의내부구조를알아야한다.이장에서는인텔프로세서에대한기억장치모델과레지스터의종류및역할등을통해인텔프로세서의내부원리를터득한다.
4장에서어셈블러를설계하기위해서는기본적인어셈블리언어의동작을알아야한다.따라서이에필요한어셈블리언어를간단한프로그램통하여명령어및주소지정방식들을이해하여야한다.
5장에서는어셈블러프로그램에서매크로확장을할때필요한매크로프로세서의원리와설계시고려사항,자료구조,이중패스에의한구현알고리즘,이알고리즘의구현에대하여알아본다.이장에서설계된방법으로구현한프로그램을[부록]에수록하였다.
6장에서는어셈블러의기능과이를구현하기위한알고리즘을설명한다.이중패스알고리즘으로구현한간단한어셈블러를[부록]에수록하였다.수록된어셈블러코드는다양한기능의어셈블러로확장할수있다.
7장에서는어셈블러가생성한모듈을연결하고메모리에적재하는기능을수행하는링커와로더를설계하는알고리즘을이해한다.
8장에는어셈블리프로그램의연습을수록하였다