Here is the result of my Convert-Loop-To-Tally exercise:
/* Convert signed integer to binary notation: */
DECLARE @BINval CHAR(39) = '' -- Format: 'xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx'
,@INTval INT = 2147483647 -- Positive limit
--,@INTval INT = -2147483648 -- Negative limit
SELECT @BINval = CASE WHEN @INTval & power(2, N) > 0 THEN '1' ELSE '0' END /* Determine bit value */
+ CASE WHEN N%4 = 0 THEN ' ' ELSE '' END /* Blks of 4 bits each */
+ @BINval
FROM [dbo].[Tally] WITH (NOLOCK)
WHERE N BETWEEN 0 AND 30 /* Set all but sign bit */
--ORDER BY N /* My tally tbl PK is N */
-- Add sign bit
SELECT @BINval = CASE WHEN @INTval >= 0 THEN '0' ELSE '1' END
+ @BINval
-- Voila...
SELECT @BINval