본문 바로가기
반응형

어셈블리어6

[어셈블리어]범용, 세그먼트, 상태 레지스터 저번에 범용 레지스터중에서 EAX, EBX, ECX, EDX에 대해서 알아보았습니다. 오늘은 나머지 레지스터에 대해 알아볼텐데요. 저번에 알려드렸던 것이 기억이 안나실수도있으니 복습의 개념으로 다시 언급하도록 하겠습니다. 레지스터에는 범용 레지스터, 세그먼트 레지스터, 상태 레지스터로 나뉩니다. 범용레지스터에는 EAX EBX ECX EDX ESI EDI ESP EBP가 있습니다. 여기서 E가 뜻하는 것은 Extends의 약자로 32bit로 연장했다는 것을 뜻합니다. 16bit는 AX BX CX DX SI DI SP BP가 되겠습니다. 이 레지스터들은 기능에 따라 분류가 되어있는데, EAX는 누산기 레지스터라고도 불리며, 곱셈이나 나눗셈연산 등에 사용됩니다. EBX는 베이스 레지스터라고 불리며 메모리 주소.. 2016. 10. 2.
[어셈블리어] 아스키코드 ASCII Code 오늘은 저번 강좌에서 예고한것처럼 아스키코드에 대해서 배워보겠습니다. 아스키 코드란 7bit 글자 인코딩으로 10진수로는 000부터 127까지 16진수는 00부터 7F까지의 숫자가 사용되며 총 128개의 부호가 사용됩니다. 매우 단순하고 간단해서 어느 시스템에나 적용이 가능했지만, 2바이트 이상의 코드는 표현이 불가능하기에 국제표준의 위상은 유니코드에게 넘어가게 되었습니다. 그럼에도 아스키코드는 많이 쓰이고 있습니다. 그럼 저번 강좌에서 숫자가 입력이 되었는데 왜 문자가 나오는지에 대해 의문을 품었었지요? 그에 대한 해답은 바로 밑의 아스키코드표에서 찾을 수 있습니다. 저번에 입력된 10진수는 12345678을 입력했었습니다. 16진수로는 00BC614E로 바뀌고, 00과 BC부분은 그대로 입력이 되었는.. 2016. 9. 27.
[어셈블리어] 레지스터(Register) 오늘은 저번시간에 MOV연산자로 할당하였던 레지스터에 대해서 알아볼까합니다. 우선 레지스터가 무엇인지부터 정의를 내려야 할것같은데요. 레지스터란 CPU내에 있는 장치로 자료를 보관하는 아주 빠른 기억 장소입니다. 레지스터는 메모리 계층중에서 최상위에 위치하며, 가장 빠른 속도로 접근이 가능한 메모리입니다. 이 레지스터는 여러 종류의 레지스터가 존재하는데 오늘은 그 레지스터의 종류중 범용 레지스터에 대해서 알아보려합니니다. 범용 레지스터는 데이터와 주소를 모두 저장할 수 있는 레지스터입니다. 저번 어셈블리어 강좌 2016/06/24 - [Software/어셈블리어] - [어셈블리어] 3장 명령어: mov를 진행할때 mov연산자뒤에 레지스터의 주소가 들어갔었습니다. 그 레지스터의 종류가 EAX, EBX, E.. 2016. 9. 27.
[어셈블리어] 3장 명령어: mov 저번 시간에 예고해드린 것처럼 오늘은 연산자 mov에 대해서 배워보겠습니다. mov연산자의 사용법은 이러합니다. 먼저 연산자인 mov가 오고 그 다음으로 레지스터의 이름 ',' 다음에 값을 넣습니다. 이게 무엇을 뜻하느냐하면, 해당 레지스터 이름에 값을 덮어씌워라! 라는 명령하고 같습니다. 왜 덮어씌우는 것이냐 하면 컴퓨터관련을 수업을 들으신 분들이라면 이런 말을 지겹게 들으셨을겁니다. 두 공간에 값이 있는데 이 두공간의 값을 어떻게 교환하느냐?하는 질문을 하면 아무것도 모르는 사람은 그냥 서로 바꾸면 되지요.라고 답변을 합니다. 하지만 교수님은 그것을 틀렸다고 하실 것입니다. 컴퓨터는 멍청하기 때문에 해당 공간안에 새로운 값이 들어오면 원래있던 값은 사라지게 됩니다. 물론 옮기는 공간에는 해당값이 존재.. 2016. 9. 27.
반응형