컴공 일기205
게시글 주소: https://orbi.kr/00059933475


어셈블리어 과제 해결. 약 9시간 걸리지 않았나 한다. 컴파일러가 알아서 처리하던 흐름과 분기를 직접적으로 따져가면서 코드를 짰기 때문에. 그 과정에서 말도 안 되는 실수도 범했고, 빙빙 돌아간 감각도 없지 않아 있지만, 무엇보다 재미있었다. 9시간 동안 공을 들여서, 성과와 성취를 만들어 낸다는 것. 내가 코딩과 컴공, 그리고 공학을 사랑하는 가장 원초적인 이유일 게다.
1. 100이하의 자연수 내, 12개의 난수(RandomNumber) 생성.
2. 3 by 4 Matrix에 해당 난수값 저장.
3. 이중반복문을 토대로, 12개의 값들 중 최댓값 특정.
4. 최댓값을 printf 함수로 출력.
걸핏보면, 상당히 간단한 과정이다. C언어로 짜봐도, 파이썬으로 짜봐도.. 길어봐야 50라인을 넘기지 못하겠지.
그런데, 이 4가지의 절차를 어셈블리어로 표기한다면 시간이 생각보다 많이 걸린다. 교수께서 subroutine을 요구하셨기 때문에 매개변수에 대한 부분, 함수 호출 부분, 그리고 분기 제어 부분이 문제가 된다는 것이다.
이 모든 것은 원래 "컴파일러가 알아서 잘 처리"해주지만, 어셈블리는 그런 것 없다. 그냥 맨땅에, 내 손으로 하드웨어에 명령하는 수밖에 없는 것이다.
num_s = -48
.text
.global main
main: save %sp, -152, %sp
ba outer_test
mov 0, %l0
inner:
call rand
nop
mov %o0, %l2
mov %l2, %o0
mov 100, %o1
call .urem
nop
mov %o0, %l2
sll %l0, 2, %o0
add %o0, %l1, %o0
sll %o0, 2, %o0
add %fp, %o0, %o0
st %l2, [%o0 + num_s]
ld [%o0 + num_s], %l3
set str, %o0
mov %l3, %o1
call printf
nop
inner_inc : add %l1, 1, %l1
inner_test :
cmp %l1, 4
bl inner
nop
outer_inc :
add %l0, 1, %l0
outer_test :
cmp %l0, 3
bl,a inner_test
mov 0, %l1
nop
add %fp, num_s, %o0
call max
nop
mov %o0, %o1
set str2, %o0
call printf
nop
max :
save %sp, -152, %sp
mov 12, %l2
ld [%i0], %l1 ! min : %l1 초기화
ba fortest
mov 1, %l0
for :
sll %l0, 2, %o0
add %i0, %o0, %o0
ld [%o0], %o0
cmp %o0, %l1
ble keep
nop
mov %o0, %l1
keep: add %l0, 1, %l0
fortest:
cmp %l0, %l2
bl for
nop
mov %l1, %i0
ret
restore
.data
str: .asciz "value = %d\n"
str2: .asciz "maximum = %d\n"
.align 8
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
점메추 플리즈 0 0
-
광명역 오르비 꺼라 0 0
관악으로 가자꾸나
-
갠적으로 이해 안되는 거 7 2
국어 동백분위여도 셤 어려우면 더 고평가하는 거 왜 그러는지 모르겠음 뭐 백분위...
-
화남 5 0
ㄹㅇ
-
수학 n제 난이도 질문 3 0
이해원 하고있는데 지인선이랑 비교하면 지인선 난이도 어떤가요? 이거 다음에 하사십...
-
국어 2등급 0 0
6모도진짜 딱 2등급 걸쳐서 턱걸이로 들어가고 매번 더프는 걸쳐서까진 아니고 중간...
-
국어 수업도 저번주 빠져서 들어야허는디
-
08입니다 6모 54455 나왔습니다 듣기 2개틀려서.. 영어는.. 네 수능까지...
-
저부터도 수능 화1 50점 생2도 1등급이었는데 공부할 시간이 부족하니까 지금...
-
근데 5 0
사후적으로 펑크가 잘 난 것도 입시가 쉽다 봐야되나 저는 개인적으로 그건 아닌 거...
-
물1 이거 진짜 으뜩해야할까요 5 0
3년전에 물리 2등급받고 이번에 물리 사문으로 승부 보려는데 아 이거 기조가 너무...
-
뭔 병신같은거 틀리고 앉아잇네 7 0
술이덜깻나
-
어케생각
-
261130은 5 0
걍 원함수로 돌리는게 가장 정석적인 출제의도 아닌가 싶은데 삼차 거기는 약간...
-
마지막이라서?
-
6모 전때까지만 해도 이감이나 바탕에서 항상 1이 나왔었는데 6모 포함 그 이후...
-
어떤식으로 보실 건지 궁금... 독서랑 문학은 인강 따라갈 건데 내가 못찾은 건지...
-
안녕하세요 1 0
ㅎㅇ
-
전대실모 생1 0 0
비킬러 레전드이지 않앆나요... 최근에 본 시험중에 제일 시간 부족했음ㅠ 근데...
-
국어 실력 떡락함 3 0
몇일 전만 해도 문학 4지문 풀면 보통 1~3개 정도로 틀리는데 그저께부터 한...
-
투과목이나 경제는 3 0
사람도 많이 없는데 어떻게 등급컷이 정상화돼있는건지 궁금함 4아래로
-
은근 투과목으로 2-3등급 노리는 분들이 많네요 2 1
쉬워보이지만 은근히 어렵..
-
미적 7모 80 7덮 85 0 0
수1,2 엔티켓 시즌1 2회독 문제를 하는게 나을까요 아니면 시즌2 넘어가는게 좋을까요ㅠㅠ
-
두각 0 0
두각 자료수령하면 그 주차 수강료 내야함? 자료만 받고 싶은데 ㅂㄱㄴ임?
-
자교우대는 안해주는게 6 0
양아치지 26학년도 중로를 아는 사람:
-
걍 외우셈 4 0
설 연성고 중건경시 외동홍
-
자신의 대학을 자랑하세요! 9 0
재학생만 알 수 있는 대학의 사소한 장점이나 좋은 것까지, 생각나는 것 모두 자랑하고 가세요!
-
생명꺼져 이제 나는 생윤으로 돌아간다
-
본인이 다닌 학교를 까야 까방권이 생김 중앙대 후문 등교 ㅈ같이 힘든 건대한테 곧...
-
잊음을 논함이 그정돈가 10 3
선지가 어려운건 이해되는데 지문 자체는 중간쯤 읽다보면 ’아 적당한게 좋다는...
-
그냥 주말보다 법정공휴일이 5 0
공부 더 안되는듯 안보이는 무언가가 쉬라고 유혹하는 느낌
-
안녕 7 0
녕안
-
슬슬 생윤런 하시는 분들 많아지는거 같아서 제가 처음에 느꼇던 생윤 공부의 막막함?...
-
다 맞는게 목표긴하고 공통 미적 각 10권? 너무 많나요 N제를 풀어본 적이...
-
전대실모 84인데 더프는96 0 0
이네 더프는 집에서 푼거임 이래서 현장감이 중요한듯ㅠ 21계산실수 22 29...
-
261130(미) 0 1
1/m으로 보면 m +뮤한 이쪽 생각하긴 어렵긴 하네 해강 대부분이 역함수로 보는게...
-
08 수리논술 도와주세요 ㅜ 0 0
수학은 3,5,6,7 미적분 백분의 99이고 내신은 평반고 3.4정도 됩니다 어제...
-
여기 지문 해설에서 재회가 아니라는데 선관, 선녀들이 천상계에서 같이 있었던...
-
나만 이거 ㅈㄴ 어려웠나 15 1
24 문학 떡밥은 골목 안이랑 잊논이 절대다수인데 저는 얘도 안밀린다 생각함
-
생명 커리 0 0
작수 2등급, 엣지 막전위 파트랑 백호 섬개완, 상크스, 실모 1n개 풀었어요 반년...
-
작수 22번 3 0
확축 알면 진짜 3분컷이구나
-
오르비 탈퇴했다 다시가입해도 본래아이민 주나요??? 3 1
그런가요???
-
중국 AI 모델이 벤치마크에서 클로드,지피티 다 제낌 1 0
나도 실사용해보고 검증좀 해야겠다
-
작년처럼 22번 나온다 전제하고 빡세게 하시나요
-
4개월만에 지1 1가능? 0 0
어제 7덮을 봤어요. 8개월만에 응시한 실전 모의고사였습니다. 언매 미적 물2 화2...
-
6모 공통 다맞, 미적 3틀 정도의 실력입니다 근데 이건 6모 공통이 전체적으로...
-
수학 28번 자작문제 0 0
-
수학 22번 수열 자작문제 0 0
원래 3<p<q로 했다가 과조건인것 같아서 뺌
-
7덮 국어 0 0
쉬웠음요? 6모 100 7모 94 6섶 94인가그랬는데 7덮 92인 걸 보면 그닥인...

누나 멋져요
이분남자임ㅋㅋ
아?

어머 감사해요 (덜렁)ㅎㅎ 농담이에요! 칭찬해주셔서 감사드립니다 (__)

굉장히 수준높은 내용이네요예... 수준이 높다기 보다는 '고전적'이라서 지금은 공부해야 할 필요가 전연 없는 그런 컨셉이기도 하지요. 누가 요새 SPARC을 쓴다고... ㅋㅋ
기계어로 코딩을 하는 것도 굉장히 좋은 경험이라고 생각합니다. 다만... 지금 쓰고 있는 언어는 너무 낡은 감각도 없지 않아서, 다른 언어로 교수님들도 빨리 바꾸고 싶다고 하는 상황입니다.
실전을 위한 이론은 사실 굉장히 중요하겠지만, 이론을 위한 이론은 말 그대로, '이론(異論)'일 뿐입니다.