As @Zack correctly says,
context adds extra space between the columns. By default this is
0.5em. You can kill this space completely by starting the format prescription with
s0, but that is probably not what you want.
To specify the width of tables use the
\setuptables command and set the parameter
textwidth. Thus to get tables exactly the width of the page you write:
and make sure that your total width specifications (including column spaces) does not exceed this value.
context will then expand the table to fit the width.
Note, however, that there is a column space before the first column and some glue after the last column. To kill these use
o0 in the format (it kills the space to the right of the current column). Below is an example document, without and with that adjustment.
\setuplayout [backspace=30mm, topspace=10mm,
\strut Text before tables.
\NC A \NC Some text to put in the middle column. \NC Notes material \NC \AR
Text between tables.
\NC A \NC Some text to put in the middle column \NC Notes material \NC \AR
\strut Text after tables.
I have chosen a slightly different page layout for this demonstration. The glue to right of the final column is not visible here, but you will notice it if the total specified width is significantly less than the text width. Thanks to help from @Aditya spacing in the table is improved by ending the rows with
\NC \AR. Note that Context Garden/Table tells us
You can leave out the \NC before the "row" command, but not if you use \AR in a last or single row