gpt4 book ai didi

assembly - TASM 中的 "Near jump or call to different CS"错误

转载 作者:行者123 更新时间:2023-12-02 01:26:50 26 4
gpt4 key购买 nike

我一直在尝试使用汇编来理解二进制搜索算法,但每当我尝试汇编代码时,都会遇到错误 Near jump or call to different CS。错误出现在我使用 JMP 或其变体指令之一的行中。我正在使用 TASM,我的代码是:

 DATA SEGMENT
ARR DW 0000H,1111H,2222H,3333H,4444H,5555H,6666H,7777H,8888H,9999H
LEN DW ($-ARR)/2
KEY EQU 7777H
MSG1 DB "KEY IS FOUND AT "
RES DB " POSITION",13,10," $"
MSG2 DB "KEY NOT FOUND!!!.$"
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA CS:CODE
START:
MOV AX,DATA
MOV DS,AX
MOV BX,00
MOV DX,LEN
MOV CX,KEY
AGAIN: CMP BX,DX
JA FAIL
MOV AX,BX
ADD AX,DX
SHR AX,1
MOV SI,AX
ADD SI,SI
CMP CX,ARR[SI]
JAE BIG
DEC AX
MOV DX,AX
JMP AGAIN
BIG:JE SUCCESS
INC AX
MOV BX,AX
JMP AGAIN
SUCCESS: ADD AL,01
ADD AL,'0'
MOV RES,AL
LEA DX,MSG1
JMP DISP
FAIL: LEA DX,MSG2
DISP: MOV AH,09H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START

最佳答案

在您的 CODE SEGMENT 中,您缺少用 ASSUME 分隔段声明的逗号(第 10 行)。将其更改为:

ASSUME DS:DATA, CS:CODE

关于assembly - TASM 中的 "Near jump or call to different CS"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36678622/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com