I heard somewhere that conditional jump instructions in the x86 instruction set were limited to 256 bytes. (In other words, the jump could not go further than 256 bytes.)
Is this true? I have been writing logic involving JMP instructions to get around this. Is it necessary?
IA32 supports 8 bit, 16 bit and 32 bit conditional relative jumps. x86_64 supports 8 bit and 32 bit conditional relative jumps. See Intel’s Software Developer’s Manuals.
Your assembler (or linker, if relocations are involved) should warn you if your label is out of range of the jump, anyway.
PS: In Real mode (and virtual-8086 mode), conditional jumps are restricted to offsets of +/-127.