특정 메모리 위치/주소에서 데이터/문자열을 읽고 쓸 수 있습니까? 메신저 8086에서 링크 된 목록을 만들 계획이지만 특정 메모리 주소에서 데이터를 읽는 방법과 동일한 변수를 사용하여 다른 메모리 주소에 데이터를 저장하는 방법을 몰라. 이것이 가능한가? 그렇다면 어떻게?어셈블리 언어로 연결된 목록 만들기 8086
답변
당신은 다음과 같은 요소를 연결할 수 : 프로그램이 새로운 요소를 삽입합니다
jmp start
element0 db 10
element1 db "jsdafélasjfdélasjd"
element2 db "lkjfasljf"
element3 db 12, 34
element4 db "asfd"
;etc.
links:
dw element0
dw element1
dw element2
dw element3
dw element4
start:
push cs
pop ds
lea si, links
add si, (3*2)
;si is now set to the offset of element3
, 목록의 종료 후 충분한 자리를 떠날 것이 중요 할 것입니다.
링크 사용 방법에 대한 링크가 있습니까? 이 지시에 상당히 새로운 것임. – ryuuuuuusei
링크는 문자열 또는 숫자의 시작 부분의 오프셋입니다. 매번 당신은 출력 변수에 저장되는 문자열을 할 때, 당신은 ", MOV시 nameofthevariable 오프셋"는 명령이 가장 컴파일러 (이전 오프셋 을로드 할 수 \t 또는 \t "숨기려 SI, nameofthevariable는 " 우리가 레지스터시 우리가 레지스터 디를 사용하여 변수를 저장할 수를 사용하십시오 변수를 읽을 수있는 변수가 저장되는 메모리의 장소.의 수 오프셋. 오프셋은 항상 입니다 자신의 세그먼트에 고정 된 장소. –
물론 것은, 예를 들어
mov di, [di]
mov di, [di]
는 (그렇지 않은 경우, 일정한 오프셋을 추가)을 next
링크는 노드의 첫 번째 일이 링크 된리스트를 통해 장소의 몇 가지를 이동합니다.
여기서 큰 문제는 해당 노드를 할당하고 할당을 해제하는 것입니다.
- 1. 8086 어셈블리 문이 잘못되었습니다.
- 2. C 프로그램 언어로 연결된 목록
- 3. 어셈블리 8086 프로그램 - 어셈블리 오류
- 4. 8086 어셈블리 - 오버플로 나누기
- 5. 8086 어셈블리 언어
- 6. 어셈블리 8086 프로그램
- 7. 8086 어셈블리 - 루프
- 8. 8086 어셈블리 코드 버그
- 9. AS3에서 연결된 목록 만들기
- 10. 연결된 목록 만들기
- 11. 어셈블리 프로그래밍에서 십진수 추가 8086
- 12. 8086 어셈블리, 약 PTR 운영자
- 13. 8086 어셈블리 프로그래밍 간단한 알고리즘
- 14. 어셈블리 코드 디버깅 (인텔 8086)
- 15. 중단없이 화면에 인쇄하십시오. 어셈블리 8086
- 16. 8086 어셈블리 언어 부호 해석
- 17. 8086 어셈블리 비디오 메모리 불일치
- 18. 어셈블리 8086 문자열에 공백 추가
- 19. 어셈블리 언어로 PIC16F877A 인터럽트
- 20. 가변 길이의 연결된 목록 만들기
- 21. Objective C에서 연결된 목록 만들기
- 22. 어셈블리 언어로 배열 나누기
- 23. 어셈블리 언어로 고생하기
- 24. 어셈블리 언어로 숫자 인쇄하기?
- 25. 어셈블리 언어로 배열 액세스
- 26. 어셈블리 언어로 루프하는 방법
- 27. 어셈블리 언어로 입력
- 28. 어셈블리 언어로 메모리 액세스
- 29. 어셈블리 언어로 증가 ecx
- 30. 어셈블리 언어로 DUP 사용
이것은 나에게 의미가 없습니다. 대안은 무엇입니까? "어디서나 무작위로"쓰십시오? – harold
배열을 사용하는 것이 대안이지만, 이것이 8086에서 가능할 지 궁금하다. – ryuuuuuusei
배열은 독서와 쓰기의 특별한 경우 일 뿐이며, 어디서나 당신이 느끼는 것처럼 시작하고 그들이 느끼는 어떤 것이 든 색인을 가지고있다. 실제 배열은 없으며, 단순한 방식으로 사용하기 위해 특정 방식으로 사용하는 메모리입니다. – harold